我有两个模型Plan
和Student::Plan
。在我的seeds.rb文件中调用Student::Plan.create!
时,我得到一个Plan
对象。似乎rails被命名空间或其他东西搞糊涂了。任何不涉及重命名课程的想法?
文件结构
models
plan.rb
student
plan.rb
表
更新
在测试w / rails c
时,这甚至更加怪异。如果您先致电Student::Plan.create!
,那么您将获得预期的对象。如果您改为呼叫Plan.create!
然后Student::Plan.create!
,则会返回Plan
个对象,而不是您实际期望的对象。
Student::Plan.create # <Student::Plan...>
Plan.create # <Plan...>
Student::Plan.create # <Plan...>
答案 0 :(得分:1)
我可以想象你有一个命名空间模型的场景(我已经使用了几次......通常用于集成不同的数据库)。这个答案没有解决处理命名空间问题的问题,但我认为“柔道”解决方案只是在models目录的根目录下创建一个名为student_plan.rb
的模型,然后使用{{1分别和StudentPlan.create
。