当我使用 devise helper current_user 时出现参数错误
i have argument error when i use devise helper current_user
我添加了 before_action :authenticate_user!
但它不起作用
回购:https://github.com/d1mentor/robostep
错误截图:
error
我的控制器:
class UsersController < ApplicationController
# Встроенный в девайз фильтр — посылает незалогиненного пользователя
before_action :authenticate_user!
# Задаем объект @user для шаблонов и экшенов
before_action :set_current_user
helper_method :user_avatar
def user_avatar(user)
if user.avatar_url.empty? then
avatar_url = "https://i.guim.co.uk/img/media/26392d05302e02f7bf4eb143bb84c8097d09144b/446_167_3683_2210/master/3683.jpg?width=1200&height=1200&quality=85&auto=format&fit=crop&s=49ed3252c0b2ffb49cf8b508892e452d"
else
avatar_url = user.avatar_url
end
end
def index
end
def set_current_user
@user = current_user
end
end
我的看法:
<div class="container text-center">
<div class="row">
<h2>Моя страница</h2>
<%= image_tag(user_avatar) %>
</div>
</div>
屏幕截图中的错误与设计助手无关current_user。这是关于 user_avatar
助手。
在您看来,您正在调用带有 0 个参数的方法:
<%= image_tag(user_avatar) %>
但是该方法是用 1 个参数定义的:
def user_avatar(user)
因此屏幕截图中的参数数量错误。
我添加了 before_action :authenticate_user!
但它不起作用
回购:https://github.com/d1mentor/robostep
错误截图: error
我的控制器:
class UsersController < ApplicationController
# Встроенный в девайз фильтр — посылает незалогиненного пользователя
before_action :authenticate_user!
# Задаем объект @user для шаблонов и экшенов
before_action :set_current_user
helper_method :user_avatar
def user_avatar(user)
if user.avatar_url.empty? then
avatar_url = "https://i.guim.co.uk/img/media/26392d05302e02f7bf4eb143bb84c8097d09144b/446_167_3683_2210/master/3683.jpg?width=1200&height=1200&quality=85&auto=format&fit=crop&s=49ed3252c0b2ffb49cf8b508892e452d"
else
avatar_url = user.avatar_url
end
end
def index
end
def set_current_user
@user = current_user
end
end
我的看法:
<div class="container text-center">
<div class="row">
<h2>Моя страница</h2>
<%= image_tag(user_avatar) %>
</div>
</div>
屏幕截图中的错误与设计助手无关current_user。这是关于 user_avatar
助手。
在您看来,您正在调用带有 0 个参数的方法:
<%= image_tag(user_avatar) %>
但是该方法是用 1 个参数定义的:
def user_avatar(user)
因此屏幕截图中的参数数量错误。