Dica Rápida: Acessando o log de qualquer lugar no Rails
Muitas vezes queremos inserir dados no log do enviroment atual do Rails direto pelo console ou por um rake task. Antes tinhamos que usar uma constante global, mas atualmente, o Rails deixou isso mais bonito e dentro do console( ou de qualquer lugar ) você pode fazer o seguinte:
1 2 3 4 |
Rails.logger.warn("AVISO:hello pelo console") Rails.logger.info("INFO:hello pelo console") Rails.logger.error("ERROR:hello pelo console") |
Pessoalmente odeio soluções como popup’s e modal, e pensando neste problema, acabei esbarrando na necessidade de um plugin para jquery que permitisse exibir divs( ou qualquer outra tag ) próxima a um botão ou link ao ser clicado ( algo semelhante a um tooltip, mas que seja ativado e desativado por click ).
Ler o resto do postOlá pessoal, em agosto publiquei um pequeno widget para dashboard do MAC. Este widget serve como cheatsheet do textmate para desenvolvedores Raisl.
Ainda utilizo bastante o projeto, pois acho uma forma mais rápida de ter acessos ao atalhos do que procurando no próprio bundle do Rails para o Textmate.
O problema é que não estou tendo mais tempo para atualizar o projeto e aind faltam muito atalhos e snippets que merecem ser mencionados no widget.
Por este motivo resolvi publicar o código no Github para quem tiver interesse poder ajudar. Na verdade o código sempre foi aberto, pois arquivos compilados em wdgt são apenas pacotes com o html/javascript e imagens necessárias para o widget funcionar, mas agora distribuindo desta forma acho que fica mais simples para quem nunca criou um widget poder ser interessar em ajudar.
Se você quiser ajudar no projeto basta abrir o arquivo RailsMate.wdgtproj no Dashcode ( sistema da Apple para criação de widgets para dashboard ) e ter acesso a todas as facilidades do programa, como interface visual. Você também pode editar tudo no Textmate e recompilar uma nova versão pelo Dashcode.
O link do projeto no github é: http://github.com/danielvlopes/railsmate/tree/master
Merb se juntou ao Rails !!!!
Provavelmente a notícia do ano para os desenvolvedores que utilizam os dois frameworks.
Acabou de se anunciado no blog do Rails que agora as equipes do Merb e Rails trabalharam em conjunto para tornar os dois frameworks apenas um na versão 3 do Rails. Graças a deus o projeto não vai ser chamar Mails nem Rerb, mas teremos um novo Rails 3.
Pessoalmente acredito que será ótimo, Rails é fantástico, tem idéias inovadoras e revolucionou o mundo de desenvolvimento web e essas idéias continuam pois ele é um framework de atitude… mas também não é perfeito, e neste ponto onde Merb foi desenvolvido para atender algumas coisas que o Rails não havia sido idealizado desde o início. Coisas como ser independente de framework ( em framework leia ORM, framework de tests, framework de Ajax e JS e etc), melhorias em performance e separação em módulos.
Mas mesmo com algumas dessas idéias, Merb continuava compartilhando muita coisa com o Rails. E partindo deste ponto as duas equipes decidiram se juntar e trabalhar no Rails 3 ao invés de trabalharem duplicando código e idéias em dois frameworks diferentes.
Em Rails temos um arquivo (até o atual Rails 2.2 o arquivo é routes.rb mas no Rails 2.3 em diante poderemos ter outros) onde podemos definir as rotas de nosso aplicativo, customizando cada url de nosso aplicativo ( semelhante ao resultado obtido com o mod_rewrite que o pessoal costuma usar em sites em PHP )
*Por que uma url deve refletir seu conteúdo? *
Por vários motivos como serem lembradas mais fácil, dizer exatamente do que um link se trata ates do usuário tentar acessar, pontuar melhor em sistemas de busca e muitas outras vantagens…
E muita gente do mundo Rails já deve ter visto este post no blog de Jamis Bucks.
Basicamente, Jamis defende que não devemos aninhar rotas por mais de um nível no Rails. Em seu post, sua solução tenta sempre manter uma url mais limpa. Concordo com Jamis ( quem sou para descordar ) que devemos tentar sempre manter uma url menor.
Ler o resto do postOlá pessoal, ultimamente tenho tentado participar em alguns projetos open-source mesmo que seja em design… e como á algumas semanas atrás postei sobre a necessidade de uma nova logo para o Cucumber, acabei tomando vergonha na cara e criando uma versão para logo .
A minha foi a primeira a entrar no wiki e depois algumas pessoas postaram outras, então a equipe do Cucumber decidiu fazer uma votação para a comunidade votar na logo mais legal.
As votações já estão abertas… se você acharem a logo uma boa candidata, eu gostaria de contar com a ajuda de todos vocês. A que considero mais relacionada com o projeto é a Logo B.
Votem pessoal: http://cukes.info/
Obrigado. ;-)
Rails Não é Solução Para Tudo - resposta ao Akita
Fabio Akita, o principal envagelizador de Rails do Brasil ( e bem influente na comunidade Ruby mundial ), postou um texto sobre Rails não ser a solução para tudo. O texto é como um complemento de uma palestra do DHH. E respondendo a questão que o Akita levantou no final do post resolvi criar este texto.
No video, DHH comenta, sobre o pensamento errôneo, onde as pessoas pensam que código legado é PHP ou Java e que Ruby on Rails é sempre perfeito… pensamento mais errado impossível. Tudo que você fizer hoje será melhor do que você fez ontém. Eu mesmo estou atrasado com um projeto interno aqui da empresa pois decidi migrar meu sistema de Rails 2.1/Test::Unit/Prototype para Rails 2.2/Jquery/Rspec no meio do caminho pois aprendi novas funcionalidades de cada um desses frameworks que me fizeram acreditar que valia a pena migrar ( aguardem novidades para o início do ano :D ).
Ler o resto do postProblemas com form_for ao Sobrescrever Atributos do ActiveRecord
Esta semana precisei utilizar campos de data em model onde deveria ser guardado no DB (mysql) como date mas no meu aplicativo rails deveria ser exibido no formato brasileiro.
Como estou no Rails 2.2 nada mais simples que usar o método localize para resolver isso… bastava sobrescrever os atributos do ActiveRecord e formatar o campo em seu getter e setter.
update 15-12-2009: Uma excelente forma de evitar a re-implementação dos accessors criados pelo Rails é através do plugin delocalize, que tira proveito do arquivo yaml de localização. Para saber mais sobre este plugin acesse: http://github.com/clemens/delocalize
Ler o resto do postUm dos blogs que assino o RSS é o Abduzeedo, uma empresa do sul do Brasil. Ele fazem um trabalho muito legal, falando sobre design em geral no seu blog.
Hoje eles lançaram uma lista bem grande com o que chamaram de sites do anos… tem muita coisa legal e vale a pena conferir: http://abduzeedo.com/2008-the-best-sites-year
Á alguns dia atrás anunciei o concurso de logos para o cucumber, passado algum tempo resolvi desenvolver a minha versão, vejam abaixo:

Para ver os outros concorrentes acesse:
http://github.com/aslakhellesoy/cucumber/wikis/logo-contest
Ultimamente o Google tem disponibilizado materiais bem interessantes como o manual de SEO.
Agora foi a vez do google tornar pública suas pesquisas quando o assunto é segurança dos Browsers.
Ainda não posso opinar sobre o material, pois ainda não li… mas sem dúvida deve ser uma boa leitura.
Acesse o manual aqui ou então baixe o material para leitura aqui .
Em novembro o Cassio Marques iniciou o projeto de tradução dos guias oficiais do Rails para português.
Para quem não conhece, os guias são um projeto comandado pelo Pratik Naik ( responsável pela parte de documentação do Rails ) que está no github e a comunidade contribui criando guias bem detalhados sobre assuntos do Rails ( bem semelhante ao developer guide do Flex, com a diferença de ser da comunidade ).
Ler o resto do postOlá pessoal, o projeto Cucumber está precisando de uma logo… para quem não conhece ele um story runner que permite que você escreva estórias para seus projetos Ruby/Rails e consiga roda-las como testes funcionais. A idéia é simular o conteúdo dos post-its que são característicos de desenvolvimento XP e conseguir rodar estas especificações de forma automotizada.
Sem dúvida um projeto bem promissor, e para participar basta acessar o link deles no github, ler as regras e enviar sua versão de logo para eles decidirem qual será a melhor.
Por padrão o Rails é acompanhando por logs dependendo de qual ambiente (desenvolvimento, produção, testes) você está. E muitas vezes não queremos que dados sigilosos como senhas sejam gravados no log. Mas muita gente não sabe ( eu mesmo já deixei passar isso algumas vezes e tive que voltar concertando ) é que temos um método muito útil para este fim. Veja abaixo o uso:
filter_parameter_logging :password
Basta colocar a chamada acima no seu ApplicationController e todos os campos password apareceram desta forma no log: [FILTERED].
Para mais acesse a documentação
Dica de alguns links sobre Jquery, Flex, Rails e Design
- Referência de design para e-commerce
- 25 photoshop brushees
- 17 fonts preferidas e designers
- 7 bons temas para admins
- Light Painting
- Icones para rede social
- Bordas arrendondadas
- Tooltips e popup windows
- 3 soluções para resolver png’s transparentes no IE6 ( 1º , 2º ,3º )
- Validação de formuário
- Text Search em tabelas
- Table Sorter
Pessoal da DClick liberou um screencast mostrando o FlashCatalyst, ferramenta que tem a promessa ousada de otimizar o fluxo de trabalho entre designer e programadores. A DClick também disponibilizou os links para download da versão beta do Catalyst e do Gumbo ( FlexBuilder 4 ) que foram disponbilizadas para quem estava presente no AdobeMax 2008 … o pequeno porém é que o Catalyst só tem versão beta para MAC ( hehehe, eu avisei que é melhor comprar um Mac ).
Segue o video ( produzido por Rafael Martinelli )
Flash Catalyst e Gumbo ( Flex 4 ) from DClick on Vimeo.
Will_paginate is the most used plugin for pagination on Rails. Exist some other way to translate previous and next links from will_paginate ( like this solution ) . But if you are using the I18n suport on Rails 2.2 only thing you need to do is …
Ler o resto do postWill_paginate é o plugin default que todo mundo usa para paginação no Rails. Existem algumas formas de traduzir os links previous e next ( como esta solução ) . Mas se você estiver usando o suporte a I18n no rails basta fazer o seguinte:
Adicione isto no locale ( no meu caso config/locale/pt-BR.yml )
pagination:
next: "próximo"
prev: "anterior"
Então em seu enviroment.rb, adicione o trecho abaixo no final:
WillPaginate::ViewHelpers.pagination_options[:prev_label]=I18n.t("pagination.prev")
WillPaginate::ViewHelpers.pagination_options[:next_label]=I18n.t("pagination.next")
Desta forma, no iniciar do seu aplicativo, você está passando a string do locale corrente ( no caso o arquivo pt-BR.yml ) que conrresponde a “pagination” para os valores padrão do hash pagination_options que o will_paginate usa.
Rails 2.2 saiu já a algumas semanas e contínuo empolgado com um novo feature, o I18N ( abreviação de Internacionalização), que na minha opinião, foi o melhor acréscimo.
Ler o resto do postCATEGORIAS
HomeDesign
SEO
Empreendimento
Cifras
Ruby e Rails
Flex
Photoshop
Flash
XHTML/CSS
JavaScript
Variados
Database
Firefox
Projetos
3D
Projetos
TextMate
Smalltalk
Mac
Livros
ARQUIVO
08/2010 (5)07/2010 (2)
06/2010 (4)
05/2010 (4)
04/2010 (4)
03/2010 (5)
02/2010 (7)
01/2009 (4)
12/2009 (7)
11/2009 (4)
10/2009 (10)
09/2009 (7)
08/2009 (6)
07/2009 (12)
06/2009 (5)
05/2009 (6)
04/2009 (9)
03/2009 (14)
02/2009 (18)
01/2009 (14)
12/2008 (20)
11/2008 (18)
10/2008 (9)
09/2008 (12)
08/2008 (6)
07/2008 (12)
06/2008 (10)
05/2008 (15)
04/2008 (19)





Eventos e mais eventos
comentado por Jonathas Sampaio
Eventos e mais eventos
comentado por Alison Souza
Eventos e mais eventos
comentado por Daniel Lopes
Eventos e mais eventos
comentado por Jonathas Sampaio
Curso de Rails 3.0
comentado por hiago