Ruby on rails 用户控制器的If语句显示操作
如果试图以未注册用户的身份查看我的应用程序,我会收到用户控制器show action@letsgo=current_user.letsgos.build的nil:nilsclass的错误未定义方法“letsgos” 如何将if语句添加到该语句中,以便未注册的用户可以查看显示页面Ruby on rails 用户控制器的If语句显示操作,ruby-on-rails,Ruby On Rails,如果试图以未注册用户的身份查看我的应用程序,我会收到用户控制器show action@letsgo=current_user.letsgos.build的nil:nilsclass的错误未定义方法“letsgos” 如何将if语句添加到该语句中,以便未注册的用户可以查看显示页面 def show @user = User.find(params[:id]) @question = Question.where('recipient_id = ? and answer is
def show
@user = User.find(params[:id])
@question = Question.where('recipient_id = ? and answer is not null', params[:id]).page(params[:page]).per_page(3)
@letsgo = current_user.letsgos.build
respond_to do |format|
format.html { render layout: 'new_application' }
format.js { render partial: 'questions/questions', locals: {questions: @question} }
end
end
@letsgo=current_user.letsgos.build(如果用户已登录)?或@letsgo=current_user.letsgos.build(除非current_user.blank)?我只是喜欢直接检查可能会抛出错误的物体。谢谢你们的提示。两种设置都很好,但我更喜欢@JTG设置的外观。但是@JTG设置更糟糕。。。更好地使用Desive提供的助手。@MichalSzyndel为什么更糟糕?