在 rails 5 上调用我的助手中的方法
Call a method that is in my helper on rails 5
我在 rails 5 中有一个会话的助手,它调用用户 table,然后调用会话 table,那是因为我在我的数据库中有它相关的,代码如下:
module SessionsHelper
def generate_user_session
session_build = user.sessions.build
session_build.generate_access_token
session_build.save!
end
end
问题是当我在控制器中调用该方法时出现此错误:
undefined local variable or method 'user'
我知道这个错误是由于我没有很好地引用我的控制器中的助手,问题是...
我如何从我的控制器中的助手调用方法的正确形式?
注意: 考虑到在我的助手中,我正在呼叫我的 table 用户,该用户也在呼叫 table 会话。
您正在尝试访问仅在您的控制器上可用的变量 (user
)。您可以尝试将@user 设置和使用为 instance_variable
.
但正如 tadman 所写,你不应该使用 helper 来控制 propose。
如果是针对会话建议,您可以使用 concern
或创建一个新的 Class 来处理此问题。
我在 rails 5 中有一个会话的助手,它调用用户 table,然后调用会话 table,那是因为我在我的数据库中有它相关的,代码如下:
module SessionsHelper
def generate_user_session
session_build = user.sessions.build
session_build.generate_access_token
session_build.save!
end
end
问题是当我在控制器中调用该方法时出现此错误:
undefined local variable or method 'user'
我知道这个错误是由于我没有很好地引用我的控制器中的助手,问题是...
我如何从我的控制器中的助手调用方法的正确形式?
注意: 考虑到在我的助手中,我正在呼叫我的 table 用户,该用户也在呼叫 table 会话。
您正在尝试访问仅在您的控制器上可用的变量 (user
)。您可以尝试将@user 设置和使用为 instance_variable
.
但正如 tadman 所写,你不应该使用 helper 来控制 propose。
如果是针对会话建议,您可以使用 concern
或创建一个新的 Class 来处理此问题。