Ruby rails 4无法创建模型

Ruby rails 4无法创建模型,ruby,ruby-on-rails-4,Ruby,Ruby On Rails 4,模型定义 class Connection < ActiveRecord::Base attr_accessible :user, :user2, :message_id, :send, :receive end 我出错了 ArgumentError: wrong number of arguments (2 for 0) from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_reco

模型定义

class Connection < ActiveRecord::Base
    attr_accessible :user, :user2, :message_id, :send, :receive
end
我出错了

ArgumentError: wrong number of arguments (2 for 0)
    from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_methods/read.rb:53:in `__temp__3756e646'
    from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_methods.rb:330:in `clone_attribute_value'
    from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_methods/dirty.rb:65:in `write_attribute'
    from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_methods/write.rb:19:in `__temp__57375627='
    from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_assignment.rb:42:in `public_send'
    from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_assignment.rb:42:in `_assign_attribute'
    from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:67:in `block in assign_attributes'
    from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:61:in `each'
    from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:61:in `assign_attributes'
    from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/core.rb:16:in `initialize'
    from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/inheritance.rb:27:in `new'
    from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/inheritance.rb:27:in `new'
    from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/persistence.rb:45:in `create'
    from (irb):3
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands/console.rb:90:in `start'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands/console.rb:9:in `start'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:64:in `<top (required)>'
    from bin/rails:4:in `require'
ArgumentError:参数数目错误(2代表0)
from/usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active\u record/attribute\u methods/read.rb:53:in`uuuu temp\uuuu3756e646'
来自/usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active\u record/attribute\u methods.rb:330:in'clone\u attribute\u value'
from/usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active\u record/attribute\u methods/dirty.rb:65:in'write\u attribute'
来自/usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active\u record/attribute\u methods/write.rb:19:in`.\u temp\u 57375627='1〕
from/usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active\u record/attribute\u assignment.rb:42:在“public\u send”中
来自/usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active\u record/attribute\u assignment.rb:42:in`\u assign\u attribute'
来自/usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:67:“块在分配属性中”
来自/usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:61:in'each'
来自/usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:61:“assign_attributes”中
来自/usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/core.rb:16:在“初始化”中
from/usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active\u record/heritance.rb:27:in“new”
from/usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active\u record/heritance.rb:27:in“new”
来自/usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/persistence.rb:45:in“create”
来自(irb):3
from/usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands/console.rb:90:in'start'
来自/usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands/console.rb:9:in'start'
来自/usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:64:in`'
从箱子/轨道:4:in“require”
这是怎么回事?

一些想法:

  • 试着像这样写出你的散列。创建(user\u id:current\u user.id,video\u id:@video.id,my\u third\u属性:“value”)

  • 出于调试目的,请尝试使用[MODEL]。创建!(),这可能会引发更详细的错误

  • 您最终将在Rails 4中得到一个警告,警告您将模型上的属性定义为attr_可访问。这是因为模型安全性已委托给具有accepts\u nester\u attributes\u for stuff的控制器

  • 连接是类的一个非常通用的名称。该类可能已经由rails框架定义

  • 干杯,祝你好运

    一些想法:

  • 试着像这样写出你的散列。创建(user\u id:current\u user.id,video\u id:@video.id,my\u third\u属性:“value”)

  • 出于调试目的,请尝试使用[MODEL]。创建!(),这可能会引发更详细的错误

  • 您最终将在Rails 4中得到一个警告,警告您将模型上的属性定义为attr_可访问。这是因为模型安全性已委托给具有accepts\u nester\u attributes\u for stuff的控制器

  • 连接是类的一个非常通用的名称。该类可能已经由rails框架定义


  • 干杯,祝你好运

    send
    是一种用于的Ruby内核方法,在ActiveRecord(以及其他地方)中大量使用
    attr\u accessible
    正在使用模型对象中的不同实现覆盖
    send
    方法


    尝试为该属性使用不同的名称。

    send
    是一种常用的Ruby内核方法,在ActiveRecord(以及其他地方)中大量使用
    attr\u accessible
    正在使用模型对象中的不同实现覆盖
    send
    方法


    尝试为该属性使用其他名称。

    您的stacktrace不完整。@BartoszKopiński我更新了stacktrace您的stacktrace不完整。@BartoszKopiński我更新了StackTraceLight,
    send
    并不是属性名称的最佳选择。但是,和往常一样,事后诸葛亮是20比20。可能想使用
    user\u id
    user2\u id
    (或者更好的是,
    到用户id
    从用户id
    )而不是
    user
    user2
    。对属性名来说,
    发送
    并不是最好的选择。但是,和往常一样,事后诸葛亮是20比20。可能想使用
    user\u id
    user2\u id
    (或者更好的是,
    到用户id
    从用户id
    )而不是
    user
    user2
    ArgumentError: wrong number of arguments (2 for 0)
        from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_methods/read.rb:53:in `__temp__3756e646'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_methods.rb:330:in `clone_attribute_value'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_methods/dirty.rb:65:in `write_attribute'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_methods/write.rb:19:in `__temp__57375627='
        from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_assignment.rb:42:in `public_send'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/attribute_assignment.rb:42:in `_assign_attribute'
        from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:67:in `block in assign_attributes'
        from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:61:in `each'
        from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/attribute_assignment.rb:61:in `assign_attributes'
        from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/core.rb:16:in `initialize'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/inheritance.rb:27:in `new'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activerecord-4.0.0/lib/active_record/inheritance.rb:27:in `new'
        from /usr/local/lib/ruby/gems/2.0.0/gems/protected_attributes-1.0.3/lib/active_record/mass_assignment_security/persistence.rb:45:in `create'
        from (irb):3
        from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands/console.rb:90:in `start'
        from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands/console.rb:9:in `start'
        from /usr/local/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/commands.rb:64:in `<top (required)>'
        from bin/rails:4:in `require'