未定义的方法`to_key'用于#<activerecord :: relation [] =“”>你的意思是? to_set to_ary

时间:2018-04-22 16:08:55

标签: ruby-on-rails

这是我的表格

.section-about__imagesDiv:not(:last-child) {

margin-top: 100rem;}

这是我的控制器

      <%= form_for @customer do |f| %>
      <ul>
        <li><%= f.text_field  :NameAndFamilyName,class:'1', placeholder:'نام و نام خانوادگی' %></li>
        <li><input class="1" placeholder="نام و نام خانوادگی"></li>
        <li><input class="1" placeholder="تلفن همراه"></li>
        <li><input class="1" placeholder="آدرس ایمیل"></li>
        <li><input placeholder="موضوع پیام"></li>
        <li><textarea placeholder="متن پیام"></textarea></li>
        <li>
          <button>ارسال پیام</button>
        </li>
      </ul>
      <% end %>

这是我的迁移:

    class CustomerController < ApplicationController
  def index
        @customer = Customer.all

    end

    def new
        @customer = Customer.new
    end

    def create
        @customer = Customer.new(customer_params)

        if @customer.save
            redirect_to @customer
        else
            render 'customer/index'

        end

    end
end

我应该怎么做这个代码没有运行?

我想要创建表单,但是这个错误会让每个事情对我来说都很正常,但它没有运行。我有这个错误:

     class CreateCustomers < ActiveRecord::Migration[5.2]
       def change
        create_table :customers do |t|
          t.string  :NameAndFamilyName
          t.integer :Phone
          t.string  :Email
          t.string  :MessageSubject
          t.text    :Message

          t.timestamps
        end
      end
    end

1 个答案:

答案 0 :(得分:0)

我假设你在索引操作上有这个错误。

@customer = Customer.all

它不会返回一个客户,而是返回客户列表。所以我建议改变它:

def index
  @customers = Customer.all
  @customer = Customer.new
end