【发布时间】:2017-04-09 05:45:15
【问题描述】:
在我的应用程序中,我有一个带有单选按钮的表单:
<%= form_for @homework.homework_students.homework_ratings do |f| %>
<label>
<%= f.radio_button :fb_value, '1', :fb_type, 'Difficulty' %>
</label>
1
<label>
<%= f.radio_button :fb_value, '2', :fb_type, 'Difficulty' %>
</label>
2
<label>
<%= f.radio_button :fb_value, '3', :fb_type, 'Difficulty' %>
3
</label>
<%= f.button :submit %>
<% end %>
目的是为一个名为“homework_ratings”的表(不确定上面的语法是否正确)中的每个作业填充两列(称为“value”和“type”),该表与名为“homework_students”的表相关联:
homework_ratings.rb
belongs_to :homework_student, :class_name => 'HomeworkStudent', :foreign_key => :homework_student_id
homework_students.rb
has_many :homework_ratings, :class_name => 'HomeworkRating'
belongs_to :homework, :class_name => 'Homework', :foreign_key => :homework_id, dependent: :destroy
homework_students 有很多作业:
作业.rb
has_many :homework_students, :class_name => 'HomeworkStudent', dependent: :destroy
homework_ratings 表:
id :integer not null, primary key
# homework_student_id :integer
# type :integer
# value :string(255)
# created_at :datetime not null
# updated_at :datetime not null
homeworks_controller.rb
def show
@homework_ratings = HomeworkRating.all
...
end
简而言之,我正在尝试从与作业没有直接关联但如上所述通过 homework_students 间接关联的家庭作业中填充表格。
我在尝试加载页面时收到错误“未定义的方法 homework_ratings”。
关于如何最好地解决这个问题有什么想法吗?
谢谢,可以提供更多信息...
【问题讨论】:
-
这不是答案,但是,我会使用
value和type以外的其他名称作为字段名称,因为它们将不可避免地与内置的 rails 方法发生冲突。
标签: ruby-on-rails ruby-on-rails-4 radio-button