我试图在球员和固定装置之间建立多对多的关系。因此,当一名球员参加过比赛时,我可以看到球员参加过哪些比赛以及谁参加过比赛。
然后,我尝试使用带有布尔值的“sub_paid”列来跟踪玩家是否已为游戏付费。我很难将其设置为真或假。我可以创建玩家/灯具记录,但没有 sub_paid 属性。
楷模
class Fixture < ActiveRecord::Base
has_many :player_fixtures
has_many :players, :through => :player_fixtures
class Player < ActiveRecord::Base
has_many :player_fixtures
has_many :fixtures, :through => :player_fixtures
class PlayerFixture < ActiveRecord::Base
belongs_to :player
belongs_to :fixture
迁移
class CreatePlayerFixtures < ActiveRecord::Migration
def change
create_table :player_fixtures do |t|
t.integer "player_id"
t.integer "fixture_id"
t.boolean "sub_paid"
t.timestamps
end
控制器
不知道该放什么,因为我对 player_fixture 没有特异性
看法
我现在有这个。
<%=form_for(@fixtures, :url => {:action =>'create'}) do |f| %>
问题
有人可以指出我正确的方向!
我的大问题,我现在真的被困住了。
- 首次提交表单时,使用 sub_paid = false 将其保存到数据库,然后可以在以后将其更改为 true。
- 能够在夹具视图上按 sub_paid = false 对所有玩家进行排序。我的播放器列表中的 EG 对它们进行了排序,因此它只显示为 false。
- 我在这里还有一个关于表单和复选框的问题仍未得到解答。HABTM 表格未在 rails 中提交多个值
我知道这很多,但这是针对我正在做的一个项目,并且已经在屏幕上尝试了 3 周的所有内容。我需要完成这件事。