如何更改rolify.rb中的默认联接表名称?

时间:2019-01-07 05:40:33

标签: ruby-on-rails rolify

我有dim_userdim_rolerole_user_map表。我正在使用rolify宝石进行授权。我没有role_id作为主键。在我的情况下,role_name是主键,而我的role_user_map表将具有2列(user_id,role_name)如何更改rolify.rb中的默认join_table名称和其他表名称?

2 个答案:

答案 0 :(得分:0)

我不熟悉它,但是我在Rolify github页面上做了一些阅读,在安装rolify gem之前,您已经有了dim_role dim_user和role_user_map表?您应该使用gem的生成器通过语法栏g rolify创建角色模型。您可以传入DimRole和DimUser作为参数,而不仅仅是Role和User,但同样,您应该让gem创建映射。表格供您使用,尚未自己创建

答案 1 :(得分:0)

查看/db/schema.rb并查看由gem创建的表的结构,然后修改和/或重命名现有表,以使其符合gem期望其结构和名称的名称。或“通过”表,您将不得不欺骗gem创建一个临时应用,并使用您先前存在的表的名称运行gems生成器(我不知道gem是否运行偏头痛,如果不是,则必须运行rake db:migrate之后),然后在schema.rb中检查创建的表,然后返回到您的开发应用程序并重组表以使其与temp应用程序中的表匹配

相关问题