Я использую CakePHP 2.0, и у меня есть следующие модели:
Artist
Product
OrderDetail
Order
ProductAvailability
Я бы хотел использовать метод find()
, чтобы получить список всех Artists
вместе с номером Products
, который они имеют в своем портфеле, и номером, который они имеют в своем архиве. Artist
может не иметь Products
.
A Product
входит в портфель Artists
, если его ProductAvailability.name = 'For sale'
или ProductAvailability.name = 'Sold'
и Order.date
, по которым он был продан, меньше, чем 30 дней в прошлом.
Продукт находится в архиве Artists
, если его ProductAvailability.name = 'Sold'
'и Order.date
, по которым он был продан, больше, чем 30 дней в прошлом.
Вот модельные ассоциации:
Artist hasMany Product
Product belongsTo Artist
Product belongsTo ProductAvailability
ProductAvailability hasMany Product
OrderDetail belongsTo Product
Product hasMany OrderDetail
Я бы предпочел использовать метод find()
вместо метода query()
для удобства переносимости и тестирования. Есть идеи?