-1
我有兩個表:如何通過form_for與rails在不同的表中保存關係數據?
a. people
id | name
b. cards
id | person_id | number
應用/型號:
# app/models/person.rb
class Person < ActiveRecord::Base
has_many :cards, foreign_key: :person_id
end
# app/models/card.rb
class Card < ActiveRecord::Base
belongs_to :people
end
現在,我想在一個頁面中節省的人,卡記錄:
# app/views/people/_form.html.erb
<%= form_for(person, url: path) do |f| %>
<%= f.label :name %
<%= f.text_field :name %>
# How to do here about card model?
<%= f.submit 'Submit %>
<% end %>
那麼如何讓一個關係源,所以我可以同時保存這兩個記錄?
非常感謝。那麼如何在控制器中做?是否有必要在不同的控制器(app/controllers/people.rb,app/controllers/cards.rb)中保存? –
你可以使用單控制器PeopleController來做這件事 – dimakura
我在我的控制器的create方法中寫道:'@ person.cards.build(number:params [:person] [:cards] [:number])''。它可以將數據保存到數據庫,但它是否好? –