【问题标题】:Rails5 error: No methoderror in ProjectsController#new. I defined it butRails5 错误:ProjectsController#new 中没有方法错误。我定义了它但是
【发布时间】:2023-04-03 05:20:01
【问题描述】:

我正在为 Project:Module 获取“未定义的方法‘新’

我的项目_controller.rb 类 ProjectsController

def new
    @project = Project.new
end

def create
    @project = Project.new(project_param)
    if @project.save
     redirect_to project_path(@project)
    else
        render 'new'
    end
end

private

    def project_param
        params.require(:projects).permit(:name, :description)
    end

结束

我的路线

前缀动词 URI 模式控制器#Action 根 GET / pages#home 关于 GET /about(.:format) pages#about help GET /help(.:format) pages#help 项目 GET /projects(.:format) 项目#index 发布 /projects(.:format) 项目#create new_project GET /projects/new(.:format) 项目#new edit_project GET /projects/:id/edit(.:format) 项目#edit 项目 GET /projects/:id(.:format) 项目#show PATCH /projects/:id(.:format) 项目#update PUT /projects/:id(.:format) 项目#update 删除 /projects/:id(.:format) 项目#destroy

pic

【问题讨论】:

  • 我愿意打赌堆栈跟踪会看到您的控制器,但不知道如何处理 @project = Project.new。听起来你有一个模块和一个名为 Project 的类。
  • 是的,我都命名为“项目”,我应该更改一个还是重命名应用程序?在我尝试学习的过程中,我正在跟随一位教练。
  • 可以添加仓库吗?

标签: ruby methods ruby-on-rails-5


【解决方案1】:

我只需要使用单数而不是复数将参数更改为“params.require(:project)”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-18
    • 1970-01-01
    • 1970-01-01
    • 2015-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多