0

私はレールに非常に慣れていません。誰かが答えてくれたら感謝します..! customers_list.html.erb を読み込めません

これは私の顧客/index.html.erbです

<li><%= link_to "Edit", edit_customers_path(customers) %></li>

これは私のcustomers_controllersです

def edit
render:"customers_list" // customers_list.html.erb in customers view
end

これは私のroutes.rbです

resources :customers

エラー:

undefined local variable or method `customers'
4

1 に答える 1

0

まず第一にindex.html.erb、顧客をリストするのに適切な場所です。したがって、必要ありませんcustomers_list

#controller
def index
  @customers = Customer.all
end

#view (index.html.erb)
<% @customers.each do |customer| %>
  <%= customer.name %> #assuming customer has the attribute name
<% end %>

1 人の顧客を編集しようとしている場合は、それをインデックス ビューのループに追加できます。

<% @customers.each do |customer| %>
  <%= customer.name %>
  <%= link_to 'Edit', edit_customer_path(customer) %>
<% end %>

ただし、に基づいて<%= link_to "Edit", edit_customers_path(customers) %>、次のように考える必要があります。

  • とはedit_customers_path? ここを見てください。rake routesを使用してルートを表示することもできます。

  • は何customersですか?あなたはそれを定義していません。

コントローラーで定義すると、ビューで使用できる場合があります。

def index
...
@customer = Customer.find(1)
end

あなたの見解では:

<%= link_to 'Edit', edit_customer_path(@customer) %>

何らかの形でお役に立てば幸いです....

于 2013-06-19T12:24:12.460 に答える