Reescrita do blog

8 abr 2013(há 12 anos)
#disqus#jcheck_rails#formtastic#best_in_place#paperclip#activeadmin
Reescrita do blog

Oi pessoas,

Como prometir to de volta para fala como foi reescrever o blog, bem sem mais delongas, vamos nessa.

Gostaria de começar falando de um dos problemas que eu tive agora no finalzinho do projeto, e que ocorreu quando comecei a filtrar por data, porém conseguir resolver o problema de outra maneira, só que agora no final não pude contornar o problema. O blog hoje está no heroku e o heroku usa postgres e em desenvolvimento eu uso sqlite3 quando precisei retornar um post por ano ou mês tive que fazer essa gambiarra...

Model

scope :by_month, lambda { |month|
  if Rails.env.development?
    where("strftime('%m', published_at) = :month", :month => month)
  else
    where("EXTRACT(MONTH FROM published_at) = :month", :month => month)
  end
}

Controller

@posts = @posts.by_month params[:month] if params[:month]

... sei que não é a opção mais elegante mas foi a que deu para fazer. só que alguns dias atrás falando com a galera do FoR algumas pessoa me sugeriram que eu pariasse ao maximo o ambiente de desenvolvimento com o de produção. Como não posso alterar o ambiente do heroku a solução seria mudar a base de dados da minha maquina para postgres, mas nem tu foi dureza, usei algumas gem que me economizaram um tempão, logo abaixo segue algumas que foram usada:

Active Admin - Usada para cria parte administrativa do blog.

gem "activeadmin"

ckEditor - Editor html wysiwyg para facilitar a na formatção dos posts.

gem "ckeditor"

Paperclip - Gerencia o upload de arquivos

gem "paperclip"

Gerencia as transferências de arquivos para o amazon

gem "aws-s3" 
gem "aws-sdk"

Best in place - Com essa gem posso editar um registro diretamente na listagem.

gem "best_in_place"

Font awesome - Usar fontes para gera icones similares ao do bootstrap.

gem "font-awesome-sass-rails"

will_paginate - Gerencia a paginação

gem "will_paginate", "~> 3.0.4"

will_paginate-bootstrap Para usar o estilo do twitter boostrap na paginação do will_paginate.

gem "will_paginate-bootstrap"

Formatastic - Facilita na montagem dos formulários.

gem 'formtastic-bootstrap'

jcheck - Validação client-side baseado nas validação do model.

gem 'jcheck_rails'

Gerador de meta tags - Usei para gera as metatags do Facebook

gem 'meta-tags', :require => 'meta_tags'

Disqus - Sitema de comentários usado na view do post

gem "disqus", "~> 1.0.4"

Estou pensando em fazer um post para cada gems acima, lógico que irei agrupar por gem relacionadas, além disso andei lendo sobre "como criar uma gem" e acredito que esse assunto renderá mais um posts.

Bem pessoas por hoje é só, qualquer dúvida estarei a disposição e em breve estarei de volta com a primeira gem da lista é: active admin.