Size: a a a

2020 October 27

AV

Alexander Vladimirov in RubyRush
Denis
Чего то не понял =) А find_by тут зачем? =)
Вообще незачем, на случай усложнения поиска))))
А вообще скорее потому что я кофе еще не пил
источник

D

Denis in RubyRush
kreker
Нужно получить айди текущего залогиненного через devise пользователя, чтобы затем подставить его в алгоритм/код, выполняющийся в application_controller
У девайса хелпер есть current_user
источник

D

Denis in RubyRush
Alexander Vladimirov
Вообще незачем, на случай усложнения поиска))))
А вообще скорее потому что я кофе еще не пил
Вот про кофе прямо в точку =)
источник

L

Lem in RubyRush
Alexander Vladimirov
тогда
city = Users.find_by(id: 6).city
city = Users.find_by(id: session[:user_id]).city
))
источник

L

Lem in RubyRush
kreker
Пробовал, но выдает ошибку о том, что локальная переменная current_user не определена
что то не то, должен быть куррент юзер.
попробуй так, как я выше написал)
источник

D

Denis in RubyRush
city = Users.find(session[:user_id]).city
источник

AV

Alexander Vladimirov in RubyRush
Lem
city = Users.find_by(id: session[:user_id]).city
))
ниче не знаю, число может быть любым (с)
источник

L

Lem in RubyRush
Lem
city = Users.find_by(id: session[:user_id]).city
))
ой, вроде в единствнном числе должен быть. User.
источник

k

kreker in RubyRush
Denis
city = Users.find(session[:user_id]).city
Тут ругается на отстутствие метода session
источник

AV

Alexander Vladimirov in RubyRush
А у вас девайс точно прикручен?
источник

D

Denis in RubyRush
kreker
Тут ругается на отстутствие метода session
А где вы это проверяете, не в консоли случаем? =)
источник

k

kreker in RubyRush
Denis
А где вы это проверяете, не в консоли случаем? =)
Нет, в application_controller`e
источник

k

kreker in RubyRush
Alexander Vladimirov
А у вас девайс точно прикручен?
Да
источник

k

kreker in RubyRush
kreker
Да
Я использую current_user.id в другом контроллере, там все работает.
Там, правда, другая конструкция:
 def create
   @task= Task.new(task_params)
   @task.user_id = current_user.id
источник

Э

Эдем in RubyRush
Тогда в чём вопрос?
источник

k

kreker in RubyRush
Эдем
Тогда в чём вопрос?
В последнем случае, как я понимаю, текущий пользователь берется из таблицы task, в экшене create
А когда я пытаюсь обратиться таким же образом к таблице users, чтобы связать значение оттуда (city) с current_user.id, то current_user кидает ошибку и отказывается определяться
Такое может быть из-за того что  пытаюсь вызвать его вне какого-либо экшена?
источник

VV

Vadim Venediktov in RubyRush
kreker
В последнем случае, как я понимаю, текущий пользователь берется из таблицы task, в экшене create
А когда я пытаюсь обратиться таким же образом к таблице users, чтобы связать значение оттуда (city) с current_user.id, то current_user кидает ошибку и отказывается определяться
Такое может быть из-за того что  пытаюсь вызвать его вне какого-либо экшена?
> пользователь берется из таблицы task

пользователи берутся из таблицы users :)
источник

Э

Эдем in RubyRush
Какую ошибку кидает?
источник

k

kreker in RubyRush
Vadim Venediktov
> пользователь берется из таблицы task

пользователи берутся из таблицы users :)
Я неправильно написал, не пользователь, а user_id
Вот он тут, справа
источник

k

kreker in RubyRush
Эдем
Какую ошибку кидает?
undefined local variable or method `current_user' for ApplicationController:Class (NameError)
источник