у rails3 есть множество настроек под ключ под ключ

#ruby-on-rails #ruby-on-rails-3 #activerecord #has-and-belongs-to-many

#ruby-on-rails #ruby-on-rails-3 #activerecord #имеет-и-принадлежит-многим

Вопрос:

Заказывайте has_and_belongs_to_many студентам
студенческие has_and_belongs_to_many книги

В модели BooksStudents я хочу добавить поле «статус» для хранения, если оно арендовано, куплено .. и т.д. и иметь возможность выбирать, например @student.books.rented или @student.books.where(:books_students=>{:status=>2})

Могу ли я сделать это с помощью HABTM?

Ответ №1:

AFAIK нет, вам понадобится настройка has_many: через..

 class Book < ActiveRecord::Base
  has_many :books_students  
  has_many :students, :through => :books_students
end

class BooksStudent  < ActiveRecord::Base
  belongs_to :book  
  belongs_to :student 
end 

classStudent  < ActiveRecord::Base 
  has_many :books_students  
  has_many :books, :through => :books_students  
end
  

итак, вы можете сделать что-то вроде @student.books или @student.student_books.where(:status =>2)

Комментарии:

1. Я думал, что может быть способ сделать это: В любом случае, я уже начал внедрять его с помощью has_many :through . Спасибо