gpt4 book ai didi

ruby-on-rails - 调试 RoR 语法错误

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

我正在阅读教程,并在尝试将用户添加到我的数据库时提出了此错误语句。我试图弄清楚如何正确阅读这些错误语句。例如,我看到输出显示语法错误,意外的 tASSOC。期待keyword_end。因此,为了在此处发布之前尝试解决该问题,我注释掉了 user.rb 文件中的这一行(该声明也指向了这一行)。但这没有用。我还添加了一个额外的“结束”,因为终端输出说“期待关键字结束”。

这是确切的终端输出:

   SyntaxError: /Users/zkidd/Sites/rails_projects/sample_app/app/models/user.rb:19: syntax error, unexpected tASSOC, expecting keyword_end
:length => { :maximum => 50 }
^
/Users/zkidd/Sites/rails_projects/sample_app/app/models/user.rb:23: syntax error, unexpected tASSOC, expecting $end
:format => { :with => email_regex },
^
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:454:in `load'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:454:in `block in load_file'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:591:in `new_constants_in'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:453:in `load_file'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:340:in `require_or_load'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:491:in `load_missing_constant'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:183:in `block in const_missing'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:181:in `each'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:181:in `const_missing'
from (irb):6
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/railties-3.0.1/lib/rails/commands/console.rb:44:in `start'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/railties-3.0.1/lib/rails/commands/console.rb:8:in `start'
from /Users/zkidd/.rvm/gems/ruby-1.9.2-p0@rails3tutorial/gems/railties-3.0.1/lib/rails/commands.rb:23:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'

这是我的 user.rb 文件:
    class User < ActiveRecord::Base
attr_accessible :name, :email

email_regex = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i

validates :name, :presence => true
:length => { :maximum => 50 }

validates :email, :presence => true
:format => { :with => email_regex },
:uniqueness => { :case_sensitive => false }
end

任何指导将不胜感激,因为我真的不想从一开始就重建这个东西:-)

最佳答案

在 :presence => true 参数后缺少逗号:

class User < ActiveRecord::Base
attr_accessible :name, :email

email_regex = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i

validates :name, :presence => true,
:length => { :maximum => 50 }

validates :email, :presense => true,
:format => { :with => email_regex },
:uniqueness => { :case_sensitive => false }
end

关于ruby-on-rails - 调试 RoR 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4248805/

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