2012-07-03 90 views
0

Rails应用程序我工作之间的分裂表,有两个中心部分:用户和组。用户通过表单注册,并添加到用户表中。的Rails:两种形式

组表有四个主要栏目:姓名,标题,描述和成员。

组分两步处理。

  1. 第1步:管理员创建组(名称,标题,说明)。
  2. 第二步:会员是一个JSON场。管理员需要登录使用第二种形式,并添加/编辑JSON结构的字段:论坛版主,管理员组,成员,解析/再解析成JSON并更新集团的表。

用户注册,和组创建表单工作正常。问题是第二种形式:创建组的成员资格。我不确定如何继续。

我所做的是创建链接和路线正确地从该组中进行选择,并显示页面上添加额外的线路和链接产生具有正确PARAMS 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,并把它的意见/组的文件夹。它有它构建一套下拉框,允许管理员挑选从用户列表来填充组成员(该功能在组助手)的逻辑。

我不知道如何用groups_admin.html.erb中的表单声明等来完成它,以及将什么添加到groups_controller.rb以导致对该特定行进行更新(在打开返回的字段转换为JSON)。到目前为止,这是我已经加入到它

def admins 
end 

更改组表模式,并创造更多的groups_admins,groups_owners,groups_members表是不是一种选择。有任何想法吗?

回答

0

你要找的关联。在这种情况下,你可能想要一组has_many用户和用户组has_many。或者,如果您希望用户能够处于多个组中,则您正在寻找has_and_belongs_to_many关联。您可以在此读到这里了:http://guides.rubyonrails.org/association_basics.html

+0

我知道如何使用协会和我在这个项目中的其他地方使用它们,但在这种情况下,我没有在创建新模型/表控制。我只有一张桌子:我可以使用的组。 – EastsideDeveloper