导轨 - 创建/销毁记录在连接表
问题描述:
我工作的这个纪录插入/删除我不知道语法是什么来执行查询。导轨 - 创建/销毁记录在连接表
我有一个用户模型和事件模型。我创建了一个名为Personal的加入表,用于存储用户喜欢的任何事件的user_id和event_id。
我创造了我的事件控制器中的“添加”方法,所以每当有人点击它运行于并执行创建逻辑,我试图发展now.The动作被绑定到我添加到网格显示额外的列所有的事件。
用户模型=>
has_many :personals
事件模型=>
has_many :personals
个人模式=>
belongs_to :user
belongs_to :events
我认为这将是像=>
@user = User.find(session[:user_id])
@event = Event.find(params[:id])
# Personal.new = User.Event?
任何人都可以帮忙吗?
答
如果您使用的是has_and_belongs_to_many协会,这将是不幸的,删除相关的链接可能会非常棘手,因为是为每个链接都没有标识符。
使用的has_many:通过关系更容易维护,将允许你做简单的事情,如:
class User < ActiveRecord::Base
has_many :user_events
has_many :events,
:through => :user_events
end
@user.events.delete(@event)
这不会删除该事件本身,那将会需要一个事件#破坏通话,而是连接两者的连接记录。
请提供更多信息。 msg的错误是什么?发生了什么,你不想或不发生你想要的事情? 我看到一个问题:你确定会话已经加载了user_id吗?此外,请检查您的日志,看看传入的参数对于您的控制器操作是什么 – 2010-02-19 15:10:05
请编辑您的问题并发布显示它们之间关系的'User','Event'和'Personal'模型的代码。 – 2010-02-19 15:19:53
抱歉没有更好地解释情况,我更新了这个问题,并希望得到任何帮助 – ChrisWesAllen 2010-02-19 15:41:02