【问题标题】:Rails redirect_to SyntaxErrorRails 重定向到语法错误
【发布时间】:2014-05-01 02:02:36
【问题描述】:

好吧,我不是网络开发人员。只是一个好奇和编程爱好者。

我正在尝试按照本教程学习 ruby​​ on rails:Ruby on Rails 3.2 Blog in 15 minutes step by step

我已经完成了几乎所有的工作,但是当我配置 cmets 时,我开始遇到一些问题。首先,我使用的是不同版本的 rails (4.0.4),所以我不得不稍微更改一下我的 app/controllers/cmets_controller.rb。文章推荐的代码是:

class CommentsController < ApplicationController
        def create
                @post = Post.find(params[:post_id])
                @comment = @post.comments.create!(params[:comment])
                redirect_to @post
        end
end

我必须进行调整的代码:

class CommentsController < ApplicationController
  def create
            @post = Post.find(params[:post_id])
            @comment = @post.comments.create!(params.require(:comment).permit(:comment_text,:link)
            redirect_to @post

  end
end

但我收到以下消息:

CommentsController#create 中的语法错误 /Users/gustavorpaiva/quick_blog/app/controllers/cmets_controller.rb:5:语法错误,意外的 tIDENTIFIER,期待 ')' redirect_to @post ^

Rails.root:/Users/gustavorpaiva/quick_blog

如果有人能帮我一把,我将不胜感激。这可能是一个非常愚蠢的错误,但我只是不知道还能做什么......

谢谢!

【问题讨论】:

  • 该错误表示您在第二个代码块的 @post.comments.create! 行上缺少右括号 )
  • 天哪,我不敢相信我没有看到……谢谢!

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-4


【解决方案1】:

create 定义的第二行缺少右括号,该行应如下所示:

@comment = @post.comments.create!(params.require(:comment).permit(:comment_text,:link))

【讨论】:

    猜你喜欢
    • 2016-11-06
    • 2013-12-09
    • 1970-01-01
    • 2019-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多