我尝试在我的rails应用程序中使用ging/mailboxer的gem。 在gem中,“Receipt”类用于模型中。 但是我已经在我的应用程序中使用了“Receipt”类。
在这种情况下,模型和表名称是重复的。 那么修复重复模型名称的最佳方法是什么?
我认为如下:
我没有找到采用Way1的任何提示。
如果我采用Way2,我将重命名表名,然后在整个应用程序中重命名模型名称。如果可能的话,我想避免这种情况,因为我已经在许多地方使用过“收据”。
我是否必须采用Way2,还是有其他方法可以修复重复的型号名称?
答案 0 :(得分:0)
正如您所说,由于它们是ActiveRecord类,因此它们具有相同的表,并且它们将在应用程序的命名空间中发生碰撞。
您可以使用模块来避免名称类冲突,或者您可以更新gem或您的代码以使用该类的其他名称。
如果您选择将类放在一个Module中,对于数据库的表,您可以使用set_table_name为该类使用不同的名称,而不是ActiveRecord预期的默认名称。