Проблема создания отношений с помощью omniauth в рельсах 3 - PullRequest
0 голосов
/ 11 апреля 2011

Хорошо, так что это еще одна попытка задать мой вопрос. Я сделал довольно плохо в первый раз. У меня настроены отношения в моих моделях, так что у пользователей много отправок, и они принадлежат пользователю. У меня есть справочный столбец в моей таблице представлений, который ссылается на пользователя и индекс:

add_index :submissions, :user_id

Я использую omniauth, чтобы люди могли войти через твиттер. Я просто хочу, чтобы вошедший в систему пользователь мог отправить заявку, а затем дать понять, что существует связь между current_user и только что написанными им записями. Проблема в том, что я не могу сохранить current_user в переменной экземпляра, например:

@user = current_user

, который я хотел бы использовать в моем контроллере подчинения (создать) следующим образом:

@user = current_user
@submission = @user.submissions.create(params[:submission])

Мне это нужно, чтобы пользователь мог создать представление на странице views / submissions / index.html.rb, и rails поймет это отношение. Большое спасибо за то, что посмотрели на это. Также я заранее прошу прощения, если я пропустил что-то действительно очевидное или это общеизвестно.

1 Ответ

0 голосов
/ 12 апреля 2011

Ваш пост не содержит вопроса или я что-то упустил?Мне кажется странным, что вы хотите назначить @user = current_user.В этом нет необходимости, в любом случае current_user должен быть пользователем, поэтому вы можете просто написать @submission = current_user.submissions.create(params[:submission]).

Может быть, вы можете отредактировать ваше сообщение и предоставить более подробную информацию о ваших вспомогательных методах (current_user), ошибкасообщение, которое вы получите с кодом выше.Что вы получите, если добавите Rails.logger.info current_user (или current_user.name, если у вас есть это поле)?

Если хотите, вы можете перейти по ссылке в моем профиле здесь, в Переполнение стека, у меня есть пара Railsтам есть учебники, в том числе с Omniauth.

...