Ошибка индексации неверного количества аргументов - PullRequest
1 голос
/ 20 марта 2020

Я получаю ошибку аргумента, и я не уверен, почему. Я все еще довольно плохо знаком с использованием Rails и программированием в целом. В настоящее время я работаю над своей индексной страницей и просто пытаюсь отобразить описание. Ниже вид и контроллер. Я не уверен, почему у t.description ожидается более одного аргумента. Это из-за сильных параметров?

Просмотр:

<h1> All Tea Blends </h1>

<% @teas.each do |t| %>
  <h2><%= link_to t.flavor, tea_path(t.id)%> - <%= t.brand.name %></h2>
  <% link_to "Write a review", new_tea_review_path%>
<% end %>

<div>
    <p><%= t.description %></p>
</div>

Контроллер:

class TeasController < ApplicationController
  def index
    @teas = Tea.order_by_rating.includes(:brand)
  end
end

1 Ответ

1 голос
/ 20 марта 2020

t.description находится за пределами l oop. Не уверен, почему вы получили неправильное количество аргументов (хотя t также используется для переводов). Просто переместите его внутрь l oop ...

<% @teas.each do |t| %>
  <h2><%= link_to t.flavor, tea_path(t.id) %> - <%= t.brand.name %></h2>
  <% link_to "Write a review", new_tea_review_path %>

  <div>
    <p><%= t.description %></p>
  </div>
<% end %>

Я бы также рекомендовал изменить переменную l oop на tea вместо t. Это более наглядно и позволяет избежать конфликтов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...