我有两个mySQL表(news
和news_lng
(。新闻表content id
,from_date
,to_date
和leading_image
字段。news_lng
表包含id
,news_id
,lng
,title
和body
字段。
news
id | from_date | to_date | leading_image
1 | 2017-05-01 | 0000-00-00 | test.jpg
news_lng
id | news_id | lng | title | body
1 | 1 | en_GB | test | test body
2 | 1 | en_US | test | test content
如何设计学说2个实体?
1。
/**
* @ORMEntity(repositoryClass="AdminRepositoryNewsRepository")
* @ORMTable(name="news")
*/
class News {
/**
* @ORMId
* @ORMGeneratedValue
* @ORMColumn(name="id")
*/
protected $id;
/**
* @ORMColumn(name="from_date")
*/
protected $fromDate;
/**
* @ORMColumn(name="to_date")
*/
protected $toDate;
/**
* @ORMColumn(name="leading_image")
*/
protected $leadingImage;
/**
* @ORMOneToMany(targetEntity="AdminEntityNewsLng", fetch="EAGER", mappedBy="news_id")
*/
private $translations;
public function __construct() {
$this->translations = new ArrayCollection();
}
// getters and setters ...//
}
/**
* @ORMEntity
* @ORMTable(name="news_lng")
*/
class NewsLng {
/**
* @ORMId
* @ORMGeneratedValue
* @ORMColumn(name="id")
*/
protected $id;
/**
* @ORMManyToOne(targetEntity="AdminEntityNews", inversedBy="translations", fetch="EAGER")
* @ORMJoinColumn(name="news_id", referencedColumnName="id")
*/
protected $news_id;
/**
* @ORMColumn(name="lng")
*/
protected $lng;
/**
* @ORMColumn(name="title")
*/
protected $tile;
/**
* @ORMColumn(name="body")
*/
protected $body;
// getters and setters ...//
}
- 我必须使用学说2 class表继承?
学说2中的最佳实践是什么?
在您的情况下,使用关系是适当的解决方案。表继承是为其他东西设计的。