2012-04-02 11 views
0

Meine Form ist Daten im Format „2. April 2012“Formatierungsdatum Parameter vor dem Erstellen?

Ich verstehe vorbei ich die einzelnen params so etwas wie dies mit formatieren können:

@release_date = Date.parse(params[:release_date]).strftime("%Y-%m-%d") 
@original_release_date = Date.parse(params[:original_release_date]).strftime("%Y-%m-%d") 
@preorder_start_date = Date.parse(params[:preorder_start_date]).strftime("%Y-%m-%d") 

Aber wie gebe ich dann die formatierten Werte meiner Aktion erstellen?

@product = @release.products.create(params[:product]) 

Vielen Dank im Voraus!

Antwort

2

Wenn Sie den Wert von params wie gleiche Feld in die Datenbank dann überschrieben haben:

params[:product][:release_date] = Date.parse(params[:release_date]).strftime("%Y-%m-%d") 
params[:product][:original_release_date] = Date.parse(params[:original_release_date]).strftime("%Y-%m-%d") 
params[:product][:preorder_start_date] = Date.parse(params[:preorder_start_date]).strftime("%Y-%m-%d") 

@product = @release.products.create(params[:product]) 
+0

Ich kann sehen, wie das funktionieren soll, aber ich bin ein bekommen „Typeerror in Products # erstellen/kann NilClass nicht DUP“ – Raoot

+0

die Bedingung gestellt, kurz bevor das Parsen Datum wie: Date.parse (params [: preorder_start_date]). strftime ("% Y-% m-% d") wenn! params [: preorder_start_date] .nil? – Vik

+0

Perfekt, danke! – Raoot

0

Sie mögen dies tun können .........

@release_date = Date.parse(params[:release_date]).strftime("%Y-%m-%d") 
    @original_release_date = Date.parse(params[:original_release_date]).strftime("%Y-%m-%d") 
    @preorder_start_date = Date.parse(params[:preorder_start_date]).strftime("%Y-%m-%d") 

Und dann

@product.release_date = @release_date 
    @product.original_release_date = @original_release_date 
    @product.preorder_start_date = @preorder_start_date 
    @product.save 

Geschehen !!!!!!!!!!

Verwandte Themen