簡體   English   中英

未定義的方法'posts_path'

[英]Undefined Method 'posts_path'

我正在創建一個Rails應用程序,用戶可以在其中創建帖子。 不幸的是,觀點出了問題。 帖子索引有效,但是當我嘗試發表新帖子時,出現錯誤“ #<#<Class:0x007fddd6657258>:0x007fddd39f6d58>"未定義方法`posts_path' #<#<Class:0x007fddd6657258>:0x007fddd39f6d58>" ,奇怪的是它引用了表單視圖的第1行如下:

= form_for @post, html: { class: "form form-horizontal post" } do |f|
  .form-group
    = f.label :content, class: 'control-label'
    .controls
      = f.text_area :content, class: 'form-control', required: true
    = error_span(@post[:content])
  = f.submit nil,class: 'btn btn-primary'
  = link_to t('.cancel', :default => t("helpers.links.cancel")), user_posts_path, :class => 'btn btn-default'

從我的新視圖中調用它:

- model_class = Post
.page-header
  %h1=t '.title', :default => [:'helpers.titles.new', 'New %{model}'], :model => model_class.model_name.human.titleize
= render :partial => "form"

我在代碼中找不到“ posts_path”的任何實例,這就是為什么我很困惑的原因。 我的路線在這里正確定義:

Rails.application.routes.draw do
  root "users#index"
  resources :users do
    resources :posts
  end
end

任何幫助將不勝感激。

您需要= form_for [@user, @post], html: { class: "form form-horizontal post" } do |f| 由於您的post路線嵌套在user

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM