【问题标题】:How to change default join table name in rolify.rb?如何更改 rolify.rb 中的默认连接表名称?
【发布时间】:2019-01-07 05:40:32
【问题描述】:

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

【问题讨论】:

    标签: ruby-on-rails rolify


    【解决方案1】:

    我不熟悉它,但我在 Rolify github 页面上阅读了一些关于安装 rolify gem 之前的 dim_role dim_user 和 role_user_map 表?您应该使用 gem 的生成器使用语法 rails g rolify 创建角色模型 您可以将 DimRole 和 DimUser 作为参数传递,而不仅仅是 Role 和 User 但同样,您应该让 gem 创建映射为您准备的表,尚未自己创建

    【讨论】:

    • 我已经有一个包含这些表的 oracle 数据库。那么如何使用呢
    【解决方案2】:

    查看 /db/schema.rb 并查看 gem 创建的表的结构,然后修改或重命名现有表以匹配 gem 期望它们的结构和名称看起来如果你有预先存在的地图或“通过”表您将不得不欺骗 gem 创建一个临时应用程序并使用您预先存在的表的名称运行 gems 生成器(我不知道 gem 是否运行 migratoins,如果没有,那么您必须运行 rake db:migrate after) 然后检查 schema.rb 中创建的表然后返回到您的开发应用程序并重组表以匹配临时应用程序中的表

    【讨论】:

    • 你在写论文吗?你为什么要在 2 个不同的帖子中发布你所谓的答案?
    • 对不起,你说得对,我必须赞成stackoverflow协议,只是这个问题是一个一般性的问题,我不知道为什么这个原始问题和我们的答案和cmets是重复的是不是我答错了?
    • 如果问题是笼统的并且解释太长,我们将问题标记为“太宽泛”
    • 我第一次意识到他说他想在他的一个表中使用 name 而不是 id 作为主键时,我没有正确阅读他的问题
    猜你喜欢
    • 2020-10-17
    • 2014-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-06
    相关资源
    最近更新 更多