Я получаю сообщение об ошибке при запуске db:setup
для моего проекта Hobo с чистой базой данных. У меня две модели: A и B, где B расширяет A на однонаправленное наследование. Все работает. Но если я начну с новой базой данных, грабли завершается с ошибкой:Rails и Hobo с проблемой одиночного вызова таблицы
$ rake db:setup
...
rake aborted!
Table as does not exist
Вот шаги, которые я прошел, чтобы воспроизвести это. Во-первых, создать приложение бродяга:
$ hobo testproject
Создать первую модель, A
:
$ ruby script/generate hobo_model_resource a name:string type:string
Setup 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
Voila. Все работает нормально. Теперь, если удалить все таблицы и запустить db:setup
, он не:
$ rake db:setup
...
rake aborted!
Table as does not exist
После предложения на Ruby on Rails Single Table Inheritance (STI) and unit test problem (with PostgreSQL), я попытался удалить test/fixtures/as.yml
и test/fixtures/bs.yml
, но это не помогло.
бродяга 0.9.103
рельсы 2.3.5
грабли 0.8.7
JRuby 1.4.0RC1
Есть предложения?
Обратите внимание, что это было исправлено на 1/24/2010 и находится в последнем кандидате на выпуск. – organicveggie