db:setup
使用干净的数据库运行我的 Hobo 项目时出现错误。我有两个模型,A 和 B,其中 B 通过单表继承扩展 A。创造一切都有效。但是如果我从一个新的数据库开始,rake 会失败并出现错误:
$ rake db:setup
...
rake aborted!
Table as does not exist
这是我重现此过程的步骤。首先,创建 Hobo 应用程序:
$ hobo testproject
创建第一个模型A
:
$ ruby script/generate hobo_model_resource a name:string type:string
设置 database.yml,生成并执行迁移:
$ ruby script/generate hobo_migration
创建第二个模型B
:
$ruby script/generate hobo_model_resource b
编辑B
模型以扩展A
:
class B < A
# --- Permissions --- #
def create_permitted?
acting_user.administrator?
end
def update_permitted?
acting_user.administrator?
end
def destroy_permitted?
acting_user.administrator?
end
def view_permitted?(field)
true
end
end
生成并运行迁移:
$ ruby script/generate hobo_migration
瞧。一切正常。现在,如果我删除所有表并运行db:setup
,它会失败:
$ rake db:setup
...
rake aborted!
Table as does not exist
按照Ruby on Rails Single Table Inheritance (STI) 和 unit test problem (with PostgreSQL)的建议,我尝试删除test/fixtures/as.yml
and test/fixtures/bs.yml
,但这没有帮助。
流浪汉 0.9.103
轨道 2.3.5
耙子 0.8.7
jruby 1.4.0RC1
有什么建议么?