verwende ein Lambda:
%Vor%Ich möchte keinen gültigen Wert in der Validierungsnachricht sehen.
%Vor%Ergebnis: "Der Titel wurde bereits vergeben" Ich will: "Event # {event} wurde bereits von # {user}"
übernommenIch versuche es auf diese Weise, Brötchen funktioniert nicht:
%Vor%Verwenden Sie ein Lambda, aber zumindest in neueren Versionen von Rails wird ActiveRecord versuchen, zwei Parameter an dieses Lambda zu übergeben, und es muss sie berücksichtigen. Verwenden wir ein einfacheres Beispiel, sagen wir, dass wir sicherstellen wollen, dass ein Benutzername nur alphanumerische Zeichen enthält:
%Vor%Der erste Parameter, der an das Lambda übergeben wird, ist ein seltsames, nicht ganz so kleines Symbol, das großartig wäre, um einem Roboter zu sagen, was schief gelaufen ist:
%Vor%(Falls Sie durch die obige Notation verwirrt sind, können Symbole mehr als nur Buchstaben, Zahlen und Unterstriche enthalten. Falls doch, müssen Sie sie in Anführungszeichen setzen, da sonst %code% aussieht Sie versuchen, die Methode %code% für ein Symbol namens %code% aufzurufen.)
Der zweite Parameter enthält einen Hash mit den Feldern, die Ihnen helfen, Ihre Fehlerreaktion zu verbessern. Wenn ich versuche, einen Benutzernamen mit Interpunktion wie "Superstar !!!" hinzuzufügen, sieht das etwa so aus:
%Vor%Nun, eigentlich ist es in Rails 3.x weder% {{Wert}} noch {{Wert}}, sondern% {Wert}.
Verwenden Sie ein Lambda, aber zumindest in neueren Versionen von Rails wird ActiveRecord versuchen, zwei Parameter an dieses Lambda zu übergeben, und es muss sie berücksichtigen. Verwenden wir ein einfacheres Beispiel, sagen wir, dass wir sicherstellen wollen, dass ein Benutzername nur alphanumerische Zeichen enthält:
%Vor%Der erste Parameter, der an das Lambda übergeben wird, ist ein seltsames, nicht ganz so kleines Symbol, das großartig wäre, um einem Roboter zu sagen, was schief gelaufen ist:
%Vor% (Falls Sie durch die obige Notation verwirrt sind, können Symbole mehr als nur Buchstaben, Zahlen und Unterstriche enthalten. Falls doch, müssen Sie sie in Anführungszeichen setzen, da sonst :activerecord.errors
aussieht Sie versuchen, die Methode .errors
für ein Symbol namens :activerecord
aufzurufen.)
Der zweite Parameter enthält einen Hash mit den Feldern, die Ihnen helfen, Ihre Fehlerreaktion zu verbessern. Wenn ich versuche, einen Benutzernamen mit Interpunktion wie "Superstar !!!" hinzuzufügen, sieht das etwa so aus:
%Vor%Nun, eigentlich ist es in Rails 3.x weder% {{Wert}} noch {{Wert}}, sondern% {Wert}.
Tags und Links ruby-on-rails