ruby-on-rails - 具有命名空间模型的多态关联查找类名称
问题描述
我有一个Project
模型。
class Project < ActiveRecord::Base
has_many :foos, as: :target # polymorphic
end
我还应用了命名空间模式来扩展Project
,供管理员操作:
class Admin::Project < Project
def action_for_admin; end
end
这主要用于管理控制器。
然而since Project
has many foos,这是一个多态关联。Admin::Project
无法正确找到关联。
调用Admin::Project.first.foos
给出了这个 SQL:
SELECT "foos".* FROM "foos" WHERE "foos"."target_id" = $1 AND "foos"."target_type" = $2 [["target_id", 1], ["target_type", "Foo::Project"]]
的target_type
搜索Admin::Project
,但它实际上包含"Project"
有没有办法Admin::Project
一起Project
使用多态关联?
解决方案
推荐阅读
- performance - SQLite 在慢速 SELECT 查询期间没有利用全部系统资源
- node.js - 我怎样才能得到摩根的身体反应
- ios - 串行队列(主线程除外)代码是否在主线程上执行?
- html - 位置绝对父级在 FireFox 中没有子图像的宽度
- javascript - 我可以使用带有 && 作为分隔符的 jquery 多个 id 选择器来获得所有 id 都满意的结果吗?
- spring - Eclipse 的 Spring Tool Suite 插件删除了我的 WEB-INF 文件,我收到很多错误
- lua - 需要帮助在 Lua 中编写范围查找代码
- node.js - 如何修复代码,我的验证使 mocha 在测试过程中行为不端
- javascript - 在单击按钮时更改变量的值
- arrays - Excel - 使用带有数组的 CountIFS 来排除结果