Совет по работе с Rails - не изменяйте вручную таблицы с помощью SQL.Когда вы увидели проблему, вы должны были написать новую миграцию, как показывал @nruth.Выполнение команды rake: migrate отлично сработало бы для вас.
В этом случае, так как вы уже удалили таблицу «пользователей», у вас теперь есть проблема, связанная с тем, что ваша схема базы данных не синхронизирована с тем, что считает Railsэто.Чтобы устранить эту проблему, вы можете либо получить схему базы данных, которая приблизительно соответствует тому, что, по мнению Rails, вручную создает таблицу «users», запускает миграцию down и затем миграцию up.Или вы можете ускорить работу Rails с тем фактом, что таблица 'users' больше не существует.Rails хранит информацию о миграции либо в таблице schema_info (Rails <2.1), либо в таблице schema_migrations (Rails> = 2.1).Если вы удалите эту таблицу, то Rails сочтет, что схема не существует, и попытается запустить все миграции вверх и заново создать для вас таблицу 'users'.
Наконец, со временем вы можете накопить несколько миграцийчто по отдельности добавить столбец или два, которые вы забыли включить.Если вы еще не отправили или еще не работали, то вы можете написать миграцию, которая будет служить основой для вашей таблицы.Это будет выглядеть примерно так:
class CreateBaselineUsers < ActiveRecord::Migration
def self.up
create_table :users, :force => true do |t|
t.string :name
...
Это приведет к принудительному удалению таблицы и ее воссозданию со всеми необходимыми атрибутами.