我知道這是違反軌道約定的紅寶石,但我這個表的id不需要自動增量,我通過邏輯來設置它。但是,它不會保存到數據庫中。所有保存的內容都保存爲空。ruby on rails id not saving
def self.up
create_table :probes, :id => false do |t|
t.string :id
t.string :name
t.integer :user_id
t.boolean :online
t.timestamps
end
end
<% form_for @probe do |f| %>
<%= f.error_messages %>
<p>
<%= f.label "Site name" %><br />
<%= f.text_field :name %>
</p>
<p style="margin-left: 10%">
<%= f.label "Probe Key" %><br />
<%= f.text_field :id, :value => @token %>
</p>
<p style="margin-left: 20%">
<%= link_to "Back to List", probes_path %>
<%= f.submit "Submit",:style => "margin-left: 75px;" %></p>
<% end %>
這甚至有可能嗎?或者,除了new.html.erb文件之外,我應該更改/檢查什麼地方?
我 @Probe = Probe.new(PARAMS [:探測]) @Probe =參數s [:probe] [:id] 在我的控制器中,但仍然無法正常工作。這是我的整個創建方法: DEF創建 \t @user = CURRENT_USER \t @probe = Probe.new(PARAMS [:探針]) \t @ probe.id =參數[:探頭] [:ID] @ probe = @ user.probes.create!(params [:probe]) if @ probe.save flash [:notice] =「成功創建探針。」 redirect_to probes_path else render:action =>'new' end end – Ryan 2009-08-11 20:25:43
好吧,我被推遲了,哈哈。我忘了在create方法中傳入@probe。然而,現在我得到一個關於strigify鍵的錯誤...未定義的方法'stringify_keys!' – Ryan 2009-08-11 20:57:35
而這種情況發生是因爲我使用的是隻接受哈希的創建。 @ Probe.save工作正常。問題已修復。 – Ryan 2009-08-12 13:08:58