Я решил, что было бы неплохо познакомиться с ORM, и выбрал Doctrine 2 в качестве предпочтительного ORM.
Я работаю над тестовым проектом, чтобы изучить основы Doctrine. Хотя большинство людей обычно ведет блог, я решил сделать простое приложение, в котором можно сохранять заказы и отслеживать их. Моя схема базы данных будет следующей:
User
id
name
Product
id
name
price
Sales_order
id
user_id
product_id
quantity
unit_price
Следовательно, моя модель Order выглядит так:
/**
* @Entity
* @Table(name="sales_order")
*/
class Order {
/**
* @Id
* @Column(type="integer", nullable=false)
* @GeneratedValue(strategy="AUTO")
*/
private $Id;
/**
* @OneToOne(targetEntity="User", inversedBy="user")
*/
private $user;
/**
* @OneToOne(targetEntity="Product", inversedBy="product")
*/
private $product;
/**
* @Column(type="integer", nullable=false)
*/
private $quantity;
}
Теперь вопрос в том, есть ли простой способ получить доступ ко всем заказам из пользовательской модели? Должен ли я писать DQL (язык запросов доктрины) для таких базовых вещей или есть способ легко получить связанные сущности? Я имею в виду, что иначе в этом не было бы никакого смысла, верно? Кроме того, правильно ли я делаю эти ассоциации? Я действительно запутался в этой очень простой модели... Очень ценится подробная помощь. Спасибо.