[Ror-es] Duda con validaciones
Jatsu Argarate
jargarate at codesyntax.com
Tue Sep 19 10:03:47 GMT 2006
Muchisimas gracias Luis y Rafa!
Era lo que buscaba.
Jatsu
Luis Villegas wrote:
> Buenas, yo lo he hecho así:
>
> En environment.rb he añadido:
>
>
> ActiveRecord::Errors.default_error_messages = {
> :inclusion => "no está incluido en la lista",
> :exclusion => "está reservado",
> :invalid => "es inválido",
> :confirmation => "no coincide la confirmación",
> :accepted => "debe ser aceptado",
> :empty => "no puede estar vacío",
> :blank => "no puede estar vacío",
> :too_long => "demasiado largo (máximo %d caracteres)",
> :too_short => "demasiado corto (mínimo %d caracteres)",
> :wrong_length => "longitud inválida (debería ser
> de %d caracteres)",
> :taken => "ya existe ese nombre en la base de datos",
> :not_a_number => "no es un número"
> }
>
>
> Y en application_helper.rb he puesto:
>
> module ApplicationHelper
> def error_messages_for(object_name, options = {})
> options = options.symbolize_keys
> object = instance_variable_get("@#{object_name}")
> if object && !object.errors.empty?
> content_tag("div",
> content_tag(
> options[:header_tag] || "h2",
> "Imposible guardar #{object_name.to_s.gsub("_", " ")}"
> ) +
> content_tag("p", "Los siguientes campos han tenido
> problemas:") +
> content_tag("ul", object.errors.full_messages.collect {
> |msg| content_tag("li", msg) }),
> "id" => options[:id] || "errorExplanation", "class" =>
> options[:class] || "errorExplanation"
> )
> else
> ""
> end
> end
> end
>
> Creo que eso es todo.
>
> Mira a ver si te va
>
>
>
> On 9/19/06, *Rafa G.* <rgo at aspgems.com <mailto:rgo at aspgems.com>> wrote:
>
> Jatsu Argarate escribió:
> >> Puedes hacer lo siguiente:
> >> validates_presence_of :name,
> >> :message => "Mensaje que quieres que salga"
> >>
> >> Esto tiene un "problema" y es que añade el nombre del campo
> delante,
> >> entonces si te molesta mírate el plugin cust-err-msg.
> >>
> >>
> >>
> >
> > Lo tengo así, pero eso solo me traduce la segunda parte del
> mensaje, el
> > que me dice que campo está vacio.
> > Yo lo que quiero es cambiar el todo mensaje que sale, el general
> y el
> > particular del campo (que este es como tu dices).
> >
> > Gracias otra vez.
> >
> > Jatsu
> > _______________________________________________
> > Ror-es mailing list
> > Ror-es at lists.simplelogica.net <mailto:Ror-es at lists.simplelogica.net>
> > http://lists.simplelogica.net/mailman/listinfo/ror-es
> >
> AR guarda los errores en un array. Lo que puedes hacer es crearte un
> helper como el error_messages_for y que imprima el array de errores
> (objeto.*errors*.full_messages) como tu quieras.
>
> Un link donde encontrarás más información:
> http://api.rubyonrails.org/classes/ActiveRecord/*Errors*.html
> <http://api.rubyonrails.org/classes/ActiveRecord/Errors.html>
>
> --
> Rafael Garcia Ortega
>
> _______________________________________________
> Ror-es mailing list
> Ror-es at lists.simplelogica.net <mailto:Ror-es at lists.simplelogica.net>
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>
>
>------------------------------------------------------------------------
>
>_______________________________________________
>Ror-es mailing list
>Ror-es at lists.simplelogica.net
>http://lists.simplelogica.net/mailman/listinfo/ror-es
>
>
More information about the Ror-es
mailing list