我正在开发的Rails应用程序有两个核心部分:用户和组。用户通过表单注册,并添加到users表中。
groups表有四个主要列:name,title,description和membership。
分组分两步处理。
用户注册和组创建表单工作正常。问题是第二种形式:创建组的成员资格。我不确定如何继续。
我所做的是创建链接和路由以从组中正确选择,并通过在“显示”页面上添加其他路径和链接来生成具有正确参数的REST调用。我确认墨水是正确的,当我将鼠标悬停在墨水上时,我看到http://myapp.com/groups/3/admin(3是组表中的正确ID)。
我的groups_controller.rb中的方法类似于以下内容:
def show
@group = Group.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @group }
end
end
我创建了groups_admin.html.erb并将其放在views / groups文件夹中。它具有构造一组下拉框的逻辑,允许管理员从用户列表中选择以填充组成员资格(函数在组帮助程序中)。
我不知道的是如何在groups_admin.html.erb中使用表单声明等完成它以及添加到groups_controller.rb以使UPDATE到该特定行的内容(在我返回之后)将字段转换为JSON)。到目前为止,这是我添加到它的内容
def admins
end
更改组表架构并创建其他groups_admins,groups_owners,groups_members表不是一个选项。有什么想法吗?
答案 0 :(得分:0)
你正在寻找协会。在这种情况下,您可能需要一个组has_many
用户和一个用户has_many
组。或者,如果您希望用户能够在多个组中,那么您正在寻找has_and_belongs_to_many
关联。你可以在这里阅读:http://guides.rubyonrails.org/association_basics.html