使用 rails 实现订单页面

Implement order pages with rails

我想实现一个订单页面,但是太难了...

系统是葡萄牙语,由于其他原因,抱歉。

我的看法:

conta/pedidos/index.html.erb

<h3>Meus pedidos</h3>

<table>
  <thead>
    <th>#</th>
    <th>Data do pedido</th>
  </thead>
  <tbody>
    <% @pedidos.each do |pedido| %>
      <tr>
        <td><%= link_to pedido.id, pedido_path(pedido.token) %></td>
        <td><%= pedido.create_at.to_s(:long) %></td>
      </tr>
    <% end %>
  </tbody>
</table>

我的控制器:

conta/pedidos_controller.rb

class Conta::PedidosController < ApplicationController
  before_action :authenticate_usuario!
  def index
    @pedidos = current_usuario.pedidos.order("id DESC")
  end
end

我的模特:

pedido.rb

class Pedido < ActiveRecord::Base
  belongs_to :pessoa
  has_many :itens, class_name: "ItemPedido" , dependent: :destroy

  accepts_nested_attributes_for :enderecos

  before_create :gerar_token

  def gerar_token
    self.token = SecureRandom.uuid
  end

end

错误:

ArgumentError in Conta::PedidosController#index
No association found for name `enderecos'. Has it been defined yet?

拜托,我做了什么?

我不确定为什么 accepts_nested_attributes_for :enderecos 在 pedido.rb 中。提供的代码中没有任何地方提到它。你能简单comment/remove吗?

如果需要,则需要为其设置关联:可能是has_many :enderecos