今天有一个比较郁闷的问题了,就是把model分模块来管理,比如Human::Blog,Content::MyTest,代码如下:

blog.rb
class Human::Blog < ActiveRecord::Base
  #对应日志的内容
  include Content
  set_table_name :human_blogs
  has_one :resource_entry,:as => :resource
  belongs_to :catalog
  has_one :my_test
end

my_test.rb
class Content::MyTest < ActiveRecord::Base
  set_table_name :content_my_tests
  belongs_to :blog
end

在blog.rb使用include来引入Content,没有效果,提示信息如下:
uninitialized constant Human::Blog::MyTest
,不知道是什么原因.最后在blog.rb加上:class_name => 'Content::MyTest',可以正确使用 Content::MyTest对象,代码如下:
blog.rb
class Human::Blog < ActiveRecord::Base
  #对应日志的内容
  set_table_name :human_blogs
  has_one :resource_entry,:as => :resource
  belongs_to :catalog
  has_one :my_test,:class_name => 'Content::MyTest'
end

my_test.rb
class Content::MyTest < ActiveRecord::Base
  set_table_name :content_my_tests
  belongs_to :blog
end
评论
lgn21st 2008-03-01
你的帖子发重了吧,我在你的另外一个帖子里面回复了.
发表评论

提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则

您还没有登录,请登录后发表评论

yangzhihuan
搜索本博客
最近加入圈子
最新评论