6

我对编码很陌生,所以我决定开始 Ruby on Rails 4.0.0 版指南,并且遇到了一个又一个的问题。我目前正在运行 4.0.0 版,并且我已逐步按照指南进行操作。

一旦我进入 5.2 第一种形式,我开始出现错误并使用其他人的帖子来解决我的问题,但这个错误似乎不会发生在其他人身上,所以这里是:

NoMethodError in PostsController#index
undefined method `action' for PostsController(Table doesn't exist):Class

这是我的代码:

class PostsController < ActiveRecord::Base                             

attr_accessible :title, :text                            

  def new                                                              
  end                                                                  

  def create                                                           
    @post = Post.new(params[:post].permit(:title, :text))              

    @post.save                                                         
    redirect_to @post                                                  
  end                                                                  

  def show                                                             
    @post = Post.find(params[:id])                                     
  end                                                                  

  def index                                                            
    @post = Post.all                                                   
  end                                                                  

  def action                                                           
  end                                                                  

  private                                                              
    def post_params                                                    
      params.require(:post).permit(:title, :text)                      
    end                                                                

end   

这是我的看法:

<p>
  <strong> Title: </strong>
  <%= @post.title %>
</p>

<p>
  <strong> Text: </strong>
  <%= @post.text %>
</p>

我的表格是:

<h1> New Post </h1>

 <%= form_for :posts, url: posts_path do |f| %>

  <p>
   <%= f.label :title %><br>
   <%= f.text_field :title %>
  </p>

  <p>
    <%= f.label :text%><br>
    <%= f.text_area :text %>
  </p>

  <p>
   <%= f.submit %>
  </p>
  <% end %>

该错误表明我没有定义操作方法,但我不确定如何首先定义一个,但这还不是全部。当我转到我的 localhost:3000/posts/new 页面时,我得到了同样的错误,但是对于 PostsController#new

有人可以帮帮我吗!!

4

1 回答 1

21

目前尚不清楚为什么您的控制器从模型类继承:

class PostsController < ApplicationController
  # ...
end
于 2013-08-22T18:18:36.363 回答