У меня есть две модели: one customer.rb, а вторая - money.rb. Отношения - это клиент has_many: деньги, а деньги принадлежат клиенту. Я использую удаленную базу данных MySql. Когда я пытаюсь извлечь данные из одной таблицы в то время он просто работает нормально, но проблема в том, когда я пытаюсь сделать это:Ruby on Rails ActiveRecord :: StatementInvalid in Customers # show
<%= @customer.money.each do |m| %>
<%= m.id %>
<%= m.cid %>
<% end %>
Он выдает ошибку: Mysql :: Error: Unknown колонка «money_tb. customer_id 'in' where clause ': SELECT money_tb
. * FROM money_tb
WHERE money_tb
. customer_id
=? Вот отрывок из моего show.html.erb:
<h1><%= @customer.name %></h1>
<%= @customer.money.each do |m| %>
<%= @m.id %>
<%= @m.cid %>
<%= @m.customer.name %>
<% end %>
Вот мой customers_controller:
class CustomersController < ApplicationController
def index
@customers = Customer.all
end
def new
@customer = Customer.new
end
def create
@customer = Customer.new(customer_params)
if @customer.save
flash[:notice] = "Customer Create"
redirect_to new_customer_path
else
render 'new'
end
end
def edit
@customer = Customer.find(params[:id])
end
def update
@customer = Customer.find(params[:id])
if @customer.update(customer_params)
flash[:notice] = "Customer Updated"
redirect_to customers_path
else
render 'edit'
end
end
def show
@customer = Customer.find(params[:id])
end
private
def customer_params
params.require(:customer).permit(:name, :address, :ph_no)
end
end
И это модель:
class Customer < ActiveRecord::Base
self.table_name = "cust_tb"
has_many :money
has_many :gold
end
Также я хочу отметить, что поле customer_id в денежной таблице представлено как «cid»
Thanks Alot #Michal_Mlozinak. это сработало. Спасибо ... –