ruby-on-rails – rails比较params [:id]和session [:user_id]的值不起作用

PHP开始,我不得了,因为我没有结束挫折,但希望有一个陡峭的学习曲线.

我正在关注如何在轨道上制作一个twitter克隆的指南,并沿着这条路继续使其越来越像twitter.

所以我有一个用户页面/users/show.html.erb,显示用户的所有帖子.

现在,如果当前登录用户页面所有者相同,我试图显示文本框,以便用户可以添加一个新的条目.

我有一个很简单的东西

<% if params[:id] == session[:user_id] %>
    put the text Box here
<% end %>

当然,这不工作,但在上面我输出了会话[:user_id]和params [:id],打印输出完全一样.

如果我设置==到!=,我得到’放在这里的文本框’的消息.

关于我在做什么错误的任何建议?
我知道这两个值匹配,我可以看到在url和当前登录用户输出.我也输出

-<% session[:user_id] %>-
-<% params[:id] %>-

所以我可以看到参数的任一端没有间隙或空格或其他字符,并且它们看起来都很干净.

输出看起来像这样

-4c4483ae15a7900fcc000003-
-4c4483ae15a7900fcc000003- 

这是用户的mongodb objectId,在任一侧都用破折号显示没有空格或任何东西.

解决方法

你确定这两个项目是简单的字符串吗?说如果你跑,会发生什么
params[:id].to_s == session[:user_id].to_s

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...