所以我做了'进入'模型。这个belongs_to
个用户和房间。用户has_one
输入,房间has_many
进入。
在ApplicationController中,存在current_user
。
def current_user
return unless session[:user_id]
@current_user ||= User.find(session[:user_id])
end
我尝试通过以下方式检查用户是否有enter
。
def free?
return unless session[:user_id]
if current_user.enter.room.count == 1 then
return true
else
return false
end
end
这也在ApplicationController中。
接下来,我在<% if logged_in? && free? %>
中写了views/top/index.html
来显示&#39;加入这个会议室&#39;按钮仅用于登录免费用户。
当我运行时,我有以下错误。
NoMethodError at/ undefined method 'free?' for #<#<Class:...>...>
我自己无法解决这个问题......我该怎么办?
答案 0 :(得分:1)
你可以免费创建吗?用户对象的方法。
class User
def free?
enter.room.count == 1
end
end
在视图内部之后调用this,current_user.free?
但如果你检查输入对象是否存在这个用户和房间的组合会更好。