2016-06-20 4 views
0

Мне поручено работать с устаревшим Rails-приложением, и никто не имеет среды разработки. У меня все запущено и работает, но я не могу создать нового пользователя в моей среде разработки, потому что facebook api не нравится вызов api, происходящий из IP-адреса, который не является производственным сервером, и почтовая программа для non facebook время регистрации отключается по той же причине. Я сузил до нескольких вариантов:Как добавить пользователя в приложение rails вручную?

  • Выяснить способ получить facebook API, чтобы принять запрос от моего ящика развития
  • Fix почтовой программы или обернуть его в условном так что подтверждение по электронной почте не требуется в среде разработки
  • вручную добавить пользователя в базу данных

Какой вариант лучше всего подходит, и как бы я идти о делать это? Я относительно новичок в рельсах и программном обеспечении. Варианты один и два кажутся потенциальными рисками безопасности, но я не знаю, как это сделать. 3. Я попытался добавить User.create ([{email: '(redacted)'}, {password: '(redacted)'} ]) к файлу seeds.rb и запуску db: семя без везения.

Предложения?

+0

Создайте тестовое приложение на developers.facebook.com для производственного приложения – WizKid

ответ

4

Ваш самый простой вариант - это просто создать нового пользователя вручную. Вместо запуска сервера рельсов ($ rails s) запустите свои рельсы консоль ($ rails c). Из этой командной строки (которая идентична отладчику, если вы когда-либо использовали это раньше), вы можете создать пользователя и сохранить его. Вы по-прежнему распространяемся валидации в модели пользователя, но что-то вдоль линий из следующих должен работать:

new_user = User.new(email: '[email protected]', name: 'Joe Smith') 
new_user.save 

Пока вы подходите валидации модели, и подключение к соответствующей базе данных , это очень простой подход. Чтобы подключиться к правильной базе данных, либо обновите config/database.yml, чтобы ваша среда разработки была той, которую вы хотите поразить, либо запускайте ее в правильной среде (если это производство, как вы подразумевали, просто запустите $ rails c RAILS_ENV=production вместо вышеупомянутого $ rails c).

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