Ruby on rails 3 MyRails应用程序中nil:NilClass的未定义方法
我得到一个:Ruby on rails 3 MyRails应用程序中nil:NilClass的未定义方法,ruby-on-rails-3,Ruby On Rails 3,我得到一个: undefined method `lat' for nil:NilClass 错误,我想解决它。确切地说,信息是: NoMethodError in Static_pages#faq Showing /home/christophecompaq/Pop/app/views/layouts/_signed_in_header.html.erb where line #101 raised: undefined method `lat' for nil:NilClass Ext
undefined method `lat' for nil:NilClass
错误,我想解决它。确切地说,信息是:
NoMethodError in Static_pages#faq
Showing /home/christophecompaq/Pop/app/views/layouts/_signed_in_header.html.erb where line #101 raised:
undefined method `lat' for nil:NilClass
Extracted source (around line #101):
98: <div id="javascript_tags with lat and lang">
99: <%= javascript_tag do %>
100: user_latitude = "<%=raw @user.lat %>";
101: user_longitude = "<%=raw @user.lng %>";
102:
103: <% end %>
104: </div>
静态页面中的命名错误常见问题解答
显示/home/christophencompq/Pop/app/views/layouts/_signed_in_header.html.erb,其中第101行出现:
nil:NilClass的未定义方法“lat”
提取的源(在第101行附近):
98:
99:
100:用户_纬度=”;
101:用户_经度=”;
102:
103:
104:
我在静态页面文件夹中还有另外两个页面,在那里我也会遇到这个错误-“联系我们”和“关于我们”
但是当我将下面的代码从\u header.html.erb中的\u签名\u中取出并粘贴到名为show.html.erb的文件中时,错误就停止了
<div id="javascript_tags with lat and lang">
<%= javascript_tag do %>
user_latitude = "<%=raw @user.lat %>";
user_longitude = "<%=raw @user.lng %>";
<% end %>
</div>
用户_纬度=”;
用户_经度=”;
但问题是,我需要在_header.html.erb中的_signed_中包含该代码
因此,我想我的问题是,‘我在哪里可以定义user_lation=“”和user_longitude=“”,这样我的页面就可以识别它们而不会给我错误?’我尝试了应用程序控制器,静态页面控制器,但我仍然遇到问题。也许我得在路由文件里放点什么,我不确定?感谢您的帮助。您必须查看控制器方法,在该方法中定义了
@user
实例变量——可能是静态页面#faq
当您将它传递给视图时,
@user
等于nil
。因此,当您尝试将lat
方法发送给它时,它会为nil:NilClass`错误生成undefined方法lat.您能否将faq
方法的代码包含在StaticPagesController
中?抱歉,我不得不退出。我的faq方法中没有任何内容,只是“def faq end”。然而,对于faq方法中的内容以及show.html.erb文件中我的问题中的javascript_标记代码,我没有任何问题?您必须找到定义@user
的位置。