2013-03-16 2 views
1

У меня есть модель под названием MyArticle. Когда я пытаюсь использовать командуДобавить столбец для миграции при использовании имени составной модели?

rails generate migration AddtestToMyArticle test:string 

Файл миграции содержит только пустые методы вверх/вниз. Сделав это ранее на одном имени модели слова, он работал отлично, а методы перехода вверх/вниз имели соответствующий код.

Я пробовал «AddtestToMy_Article», но это тоже не сработало. Что мне нужно сделать, чтобы работать с моим именем составной модели и командой генерации миграции?

ответ

2

Вы должны использовать

rails generate migration AddColumnToMyArticle test:string 

При использовании «AddColumn» у вас будет соответствующий код в вашей миграции.

Я только что просмотрел это, и, хотя мой ответ верен, лучше иметь более описательное имя миграции. Пользователь, который заметил, что капитализация правильна, заключается в том, что, если у вас нет каждого нового слова с заглавной буквы, Rails не подберет то, что именно вы пытаетесь сделать. Итак, в вашем вопросе у вас есть AddtestTo..., но это должно быть AddTestTo....

1

рельсов генерировать миграции AddNewFieldToMyArticle new_field: струнный

+1

Другими словами: обратите внимание на столицу N в NewField. – awendt

+0

Нет, имя поля не является проблемой, мое имя модели. Предположим, я добавляю поле под названием «test». У этой проблемы есть та же проблема. В качестве примера я использовал только «новое поле» в моем вопросе. – ILovePaperTowels

2

Это похоже на работу, если вы используете подчеркивания, а не CamelCase

rails g migration add_test_to_my_article test:string 

Надеется, что это помогает

Смежные вопросы