0

テーブルのすべてのレコードを読みたい。これは私のコードです

コントローラ:

def list
    @vorlesung=Vorlesung.find(:all)
  end

意見:

<html>
<body>
  <table>
     <tr>
       <th>
         Name
       </th>
     </tr>
    <% @vorlesung.each do |v| %>
     <tr>
       <td><%= v.Name %> </td>
     </tr>
    <% end %>
  </table>

</body>

</html>

およびルーティングファイル:

root :to => 'vorlesungs#Show'
  match 'vorlesungs/new' =>'vorlesungs#new'
  match 'vorlesungs' =>'vorlesungs#list'
 resources :vorlesungs

CRUDについて理解したように、リソースのみを書き込む必要があります:vorlesungs。しかし、私のコードは一致しないと機能しません'vorlesungs' =>'vorlesungs#list'誰かがその理由を教えてくれませんか?

4

2 に答える 2

1

リストは、リソースによって作成されたデフォルトのリソースではありません。以下のリンクの表を確認して、resourcesメソッドで作成されたルートで使用されるすべてのアクションを確認してください。

http://guides.rubyonrails.org/routing.html#resources-on-the-web

ルートを維持するか、リストの名前をインデックスに変更する必要があります(ビューのlist.html.erbを含む)。慣例に違反しないように、リストの名前をインデックスに変更することをお勧めします。

于 2011-08-19T15:35:07.233 に答える
0

リソースのすべての要素を一覧表示するためのCRUDアクションはインデックスであるため、コードを次のように変更すると

def index
    @vorlesung=Vorlesung.find(:all)
end

ビューの名前をインデックスに変更すると、使用できるようになります

resources :vorlesung
于 2011-08-19T15:47:19.663 に答える