Ich habe Code wie folgt aus:Schienen ActiveAdmin. Wie setze ich den Standardwert?
ActiveAdmin.register Post do
form do |f|
f.inputs "Post Details" do
f.input :title
f.input :body
f.input :published_at, :as => DateTime.now
end
f.actions
end
Ich möchte das Feld :published_at
(das ist t.datetime) auf das aktuelle Datum und die Uhrzeit standardmäßig eingestellt werden. Mein Beispiel funktioniert nicht. Wie kann ich das erreichen?
Es ist anzumerken, dass das Formular zum Bearbeiten vorhandener Datensätze sowie zum Erstellen neuer Datensätze verwendet wird. Daher ist es besser, bedingte Zuweisung zu verwenden, um zu vermeiden, dass der vorhandene Wert von published_at versehentlich überschrieben wird. 'f.object.published_at || = DateTime.now' – omnikron
' f.object.published_at = DateTime.now wenn f.object.persistiert? 'erfüllt den Standardwert nur für neues Objekt. Es wird keinen leeren Wert für ein vorhandenes Objekt überschreiben. –