林學習軌道,探索了一下從書本,並創建具有爲提高我的知識添加功能的簡單應用。即時通訊編寫一個簡單的博客應用程序,我有一個名爲添加日期的表單中的字段,我不希望這是一個字段,我希望它從服務器獲取日期並自動將其放入數據庫。我將如何去做這件事?我正在考慮一個隱藏的領域,但不確定如何處理日期並將其插入隱藏的領域。這是錯誤的做事方式嗎?
由於事先
院長在軌當前日期形成
Q
在軌當前日期形成
2
A
回答
6
我不會用一個隱藏字段,因爲即使它被隱藏在用戶可以操縱這一點。我認爲,解決這個問題的最好辦法是,忽略形式的日期和時間正確保存對象之前添加到您的控制器操作模型:
def SomeController
#...
def create
@model = Model.new params[:model]
@model.date_field_name = Time.now
if @model.save
# whatever should be done if validation passes or
redirect_to @model
else
# whatever should be done if validation fails or
render :new
end
end
#...
end
但是你沒有做任何這一點,因爲軌道上的紅寶石提供了兩列created_at
和updated_at
。當對象被創建時將會設置created_at
,並且每次更新此對象時都會設置updated_at
。
0
在Rails中,如果你給模型的屬性賦予某些名字,那麼ActiveRecord會給它們特殊的行爲。有四種不同的日期/時間相關的:
created_on
:被自動設置爲記錄的創建created_at
日期:被自動設置爲日期和記錄的創建updated_on
時間:被自動設置爲記錄被更新updated_at
日期:被自動設置爲記錄被更新
通常,created_at
/updated_at
對得到自動由t.timestamps
聲明在添加到模型該模型的相關ActiveRecord Migration。
1
這裏是一個形式的顯示當前日期的視圖(新):
<% form_for(@recipe) do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :title %><br />
<%= f.text_field :title %>
</p>
<p><b>date</b><br/>
<%= f.datetime_select :date %>
</p>
<p>
<%= f.label :instructions %><br />
<%= f.text_area :instructions %>
</p>
<p>
<%= f.submit 'Create' %>
</p>
<% end %>
<%= link_to 'Back', recipes_path %>
和控制器:
def new
@recipe = Recipe.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @recipe }
end
end
相關問題
- 1. 當前日期
- 2. 用Java生成當前日期戳記
- 3. xquery fn:當前日期()合成
- 4. 當前日期在app.config
- 5. 由當前日期
- 6. 僅當前日期
- 7. Xpath當前日期
- 8. 在當前日期前3天和在
- 9. 將當前日期添加到當前日期mysql
- 10. 將當前日期與Date.Now()比較當前日期爲PAST
- 11. SQLite當前日期和過去幾年的當前日期
- 12. 比較在日期選擇器日期與當前日期
- 13. 找到當前日期和日期在java中的日期
- 14. 我如何保存當前日期/時間的軌道3日期時間列
- 15. 如何阻止包括日期助手當前日期和月份的軌道
- 16. sencha touch - datepickerfield在當前日期之前不顯示日期
- 17. 如何在jsdatepicker當前日期之前禁用日期
- 18. 找出從當前日期前一年日期在JavaScript
- 19. 當前日期,當前月份?
- 20. 當前日期是當前或超過
- 21. Vb.net當前日期減去日期
- 22. 日期。減去從列當前日期
- 23. PHP的日期與當前日期
- 24. 當前日期不符合URL日期
- 25. PHP:日期不是當前日期
- 26. 將日期添加到當前日期
- 27. 比較當前日期和日期inp
- 28. 選擇日期到當前日期 - mysql
- 29. 根據當前日期計算日期
- 30. Sugarcrm日期選擇器在當前日期之前禁用日期
是當對象被添加到數據庫中的updated_at設置?正如我想知道如果我可以只是改變我的看法,以update_at命令? – Dean 2010-05-24 10:31:37
是,當對象被添加到數據庫'updated_at'相同'created_at' – jigfox 2010-05-24 10:37:35