gpt4 book ai didi

ruby-on-rails - ruby on rails 中的未定义方法错误 ^

转载 作者:行者123 更新时间:2023-12-04 06:24:38 25 4
gpt4 key购买 nike

我是第一次尝试 rails,但我一直收到这个未定义的方法错误。到目前为止,我所做的只是使用 rails 创建一个新项目,并使用脚手架创建名为 test 的数据库表。应用 rate 命令后一切正常,但是当我在网络浏览器中运行它时,它给了我这个错误:

ActionView::TemplateError (undefined method `^' for "7":String) on line #3 of app/views/tests/new.html.erb:
1: <h1>New test</h1>
2:
3: <% form_for(@test) do |f| %>
4: <%= f.error_messages %>
5:
6: <p>

任何人对我如何处理这个错误有任何想法?

编辑:-

Controller 中的"new"操作:-
def new
@test = Test.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @test }
end
end

最佳答案

错误消息提示是因为 Rails 试图使用 ^字符串“7”上的运算符,它不支持该操作(数字 7 将支持该操作)。回溯中指示的行是 form_for(@test) , 所以 form_for@test 做一些事情这导致 ^被调用 7 .最可能的原因是 Rails 尝试异或 @test某处的 id 出乎意料地@test.id返回字符串 "7"而不是数字 7 .

换句话说,您可能设置了 tests表有一个字符串类型而不是整数的 id 列,Rails 不喜欢。

关于ruby-on-rails - ruby on rails 中的未定义方法错误 ^,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6178539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com