Ich habe ein Formular, um ein Produkt zu erstellen. Ein Produkt hat viele Felder mit Validierungen. Zum Beispiel:Rails Validierungsfehler pro Formularfeld
- Name:
- Beschreibung:
- Farben:
- Größe:
- Verfügbare Mengen:
Say Benutzer versucht, leere Form zu speichern. Jetzt möchte ich zeigen, haben folgende Art von Fehler hash:
{
general: 'Something went wrong, Please contact support team.'
product: {
name: 'Name can not be blank',
description: 'Description can not be blank'
}
}
Damit ich general
Fehler oben zeigen kann (falls vorhanden) oder ich in der Lage, Fehler zu zeigen, gerade über dem entsprechenden Feld.
In products_controller
,
def create
@product = Product.new(product_params) # Strong params
if @product.save
flash[:success] = "Welcome to the Sample App!"
redirect_to @product
else
render 'new'
end
end
Wie kann ich Fehler zu jedem Feld entspricht? Ich bin mir bewusst, die @product.errors
wird mir Fehler geben. Aber ich möchte auch einen general
Fehlerschlüssel behalten. flash
sind eine Möglichkeit, es zu tun. Aber soweit ich weiß, können wir im Nu nur Textnachrichten senden. Was sollte der richtige Weg dazu in Rails sein?
Danke,
Sinn macht. Vielen Dank. – Indyarocks
du bist willkommen @Indyarocks. Prost. –