Posts Tagged ‘yml’

Ruby on Rails Paperclip com I18n

Postado em 18 nov 2009
Categoria(s) I18n, Ruby on Rails

O plugin paperclip não tem suporte para i18n por padrão.

Então vamos implementar isso no braço, talvez não seja a forma mais elegante do mundo, mas funciona.

No seu model:

class Ong < ActiveRecord::Base
  # Paperclip
  has_attached_file :logo, :styles => { :thumb => "100x100>" }
  validates_attachment_size :logo, :less_than => 50.kilobytes, :message => I18n.t('activerecord.errors.messages.attachment_size', :min => 0, :max => 50.kilobytes)
end

Agora você precisar criar a diretiva activerecord.errors.messages.attachment_size no seu config/locales/pt-BR.yml:

pt-BR:
  # Active Record
  activerecord:
    errors:
      template:
        header:
          one: "Não foi possível gravar: 1 erro"
          other: "Não foi possível gravar: {{count}} erros."
        body: "Por favor, verifique o(s) seguinte(s) campo(s):"
      messages:
        attachment_size: "tamanho do arquivo deve estar entre {{min}} e {{max}} bytes"

Pronto! Seja feliz!
Se o plugin não faz, a gente faz.

Se você gostou desse texto e acha que ajudou você, me recomende: Recommend Me.

  • Share/Bookmark

Como definir campos obrigatórios no symfony usando Validation File

Postado em 25 ago 2008
Categoria(s) Symfony

É necessário implementar um arquivo validação com o mesmo nome da action dentro do diretório validate do módulo.

Por exemplo, edit.yml.

Digamos que o formulário tenha os campos nome e data, e eles devem ser de preenchimento obrigatório.

Deve ficar da seguinte forma o arquivo edit.yml:

1
2
3
4
5
6
7
8
9
10
11
12
methods: [post]
 
fillin:
  enabled: true
 
fields:
  nome:
    required:
      msg: Campo nome é obrigatório.
  data:
    required:
      msg: Campo data é obrigatório.

O atributo fillin define se os campos devem retornados preenchidos se ocorrer erro de validação.

  • Share/Bookmark

Validação de datas no symfony com sfDateValidator

Postado em 22 ago 2008
Categoria(s) Symfony

Para validar datas no symfony usando um arquivo yml é muito simples.

Você pode criar um arquivo com o nome da sua action.yml dentro do diretório validate do seu módulo, por exemplo: edit.yml.

1
2
3
4
5
6
7
8
9
methods: [post]
 
fillin:
  enabled: true
 
fields:
  campo_data_do_form:
    sfDateValidator:
      date_error: Aqui fica a mensagem quando ocorre erro de validação
  • Share/Bookmark

Construindo a primeira aplicação no Google App Engine

Postado em 02 jul 2008
Categoria(s) Google App Engine, Python

Vou fazer uma aplicação “Hello, world!” usando Google App Engine.

A primeira coisa a se fazer é ir para a página: http://code.google.com/intl/pt-BR/appengine/

Você precisa fazer o cadastro e informar o seu número de telefone, depois disso o Google irá enviar uma mensagem para o seu celular com o código de acesso para ativação da conta.

Feito o cadastro é preciso baixar o SDK, o SDK é o ambiente de desenvolvimento do Google App Engine, está disponível para ambientes Windows, MAC OS e Linux.

Eu uso a distribuição Ubuntu do Linux, vou mostrar como rodar no Linux, para baixar o SDK visite: http://code.google.com/intl/pt-BR/appengine/downloads.html ou http://googleappengine.googlecode.com/files/google_appengine_1.1.0.zip

Feito do download descompacte em algum diretório no seu home.

O Google App Engine usa a linguagem de programação Python, desta forma você precisa ter o Python 2.5 instalado em sua distribuição.

Instalando o Python 2.5

No terminal digite:

1
2
 
sudo apt-get install python2.5 python2.5-dbg python2.5-dev python2.5-doc python2.5-examples idle-python2.5 apache2

Feito isso já podemos brincar com o Google App Engine.

No raiz do diretório google_appengine existe dois arquivos em Python:

  • appcfg.py – Esse arquivo tem a função de publicar sua aplicação nos servidores do Google.
  • dev_appserver.py – Esse arquivo tem a função de testar sua aplicação localmente.

Dentro do diretório google_appengine crie um diretório chamado helloworld.

Dentro do diretório helloworld crie o arquivo chamado helloworld.py com o seguinte conteúdo:

1
2
3
print 'Content-Type: text/plain'
print ''
print 'Hello, world!'

Esse arquivo apenas define o conteúdo da página como texto e imprime a mensagem “Hello, world!”.

Agora precisamos criar o arquivo de configuração da aplicação.

O Google App Engine usa um arquivo no formato YAML para armazenar as configurações, visto que o formato XML é muito poluído e o YAML é bem mais limpo e leve.

Dentro do diretório helloworld crie o arquivo app.yaml com o seguinte conteúdo:

1
2
3
4
5
6
7
application: helloworld
version: 1
runtime: python
api_version: 1
handlers:
- url: /.*
  script: helloworld.py

Esse arquivo define:

  • A identificação da aplicação, com o nome helloworld.
  • A versão da aplicação, o esquema de versão é importante, pois o Google App Engine permite voltar versões das aplicações depois de publicado.
  • Diz que a linguagem é Python, futuramente o Google App Engine irá dar suporte a outras linguagens de programação.
  • Define qual a url que responde pela requisição, no caso existe uma expressão regular /.* que diz que é tudo da home.

Testando a aplicação localmente

Agora vem uma mágica legal do Google App Engine, gostei disso.

Para rodar a aplicação você precisa estar dentro do diretório google_appengine e dar o seguinte comando:

1
2
 
python dev_appserver.py helloworld/

Onde helloworld é o nome da aplicação.

Se você visitar o endereço: http://localhost:8080 você poderá testar a aplicação que você acabou de fazer, nesse exemplo simples irá aparecer na tela “Hello, world!”.

Pronto! ;-)

  • Share/Bookmark