Tôi có một mô hình địa điểm và tôi muốn làm điều nàyRails tìm hoặc tạo dựa trên hai lĩnh vực
Venue.find_or_create_by_
nhưng tôi chỉ muốn có một địa điểm mới được tạo ra nếu một có cùng tên và ngày làm chưa tồn tại
Ví dụ
=> Venue(id: integer, location: string, showdate: datetime, created_at: datetime, updated_at: datetime)
Một địa điểm là duy nhất và cần phải được tạo ra nếu vị trí và showdate không có mặt trong db
Jeez, Rails và đặc biệt là Ruby liên tục làm tôi ngạc nhiên. Làm thế nào để nó biết chức năng đó có ý nghĩa gì? Có một số loại bắt tất cả hàm find_or_create_by_ * diễn giải nó không? – Jordan
Trên thực tế nevermind, tôi đã có một cái nhìn tại nguồn Rails - Rails sử dụng một hàm method_missing mà một regex trên phương thức được gọi và phân tích nó. Đó là thiên tài. Nếu ai khác quan tâm, hãy kiểm tra active_record/base.rb trong nguồn Rails. – Jordan
Cũng được chấp nhận là chuyển chúng làm đối số. Venue.find_or_create_by (: location => location,: showdate => showdate) –