我正在构建一个非常依赖第三方API的站点,所以我认为将API包装器打包为服务是有意义的,但是我开始找到访问它的实例.在控制器之外,例如在实体存储库中.与此相关的是能够访问控制器之外的配置值(例如在实体存储库中)也是有用的.
任何人都可以告诉我,如果这是可能的,如果没有,是否有建议的方法来做这种事情?
谢谢你的帮助
我有class categroies和class Products.
在我的存储库中我有功能
getProducts($categoryid,$location)
我需要像这样循环在树枝模板中
{% for category in categories %}
--{{ category.name }}--
{% for product in getProducts(category.id,location) %}
--{{ product.name }}--
{% endfor %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
还是有更好的方法
我有2个实体,即Match和Team.一个团队可以拥有一对多的匹配.但是,我的Match实体包含两个引用同一实体Team的字段.他们是$ homeTeam和$ awayTeam.如何将Team,$ matches中的相同字段作为双向关系引用?
我目前的非工作代码如下:
我的匹配实体:
/**
* @ORM\Entity
* @ORM\Table(name="match")
**/
class Match {
/**
* @ORM\ManyToOne(targetEntity="Team", inversedBy="matches")
* @ORM\JoinColumn(name="home_team_id", referencedColumnName="id")
* **/
protected $homeTeam;
/**
* @ORM\ManyToOne(targetEntity="Team", inversedBy="matches")
* @ORM\JoinColumn(name="away_team_id", referencedColumnName="id")
* **/
protected $awayTeam;
Run Code Online (Sandbox Code Playgroud)
我的团队实体(我猜错了吗?):
/**
* @ORM\Entity
* @ORM\Table(name="team")
* **/
class Team {
/** @ORM\OneToMany(targetEntity="Match", mappedBy="homeTeam", mappedBy="awayTeam") **/
protected $matches;
Run Code Online (Sandbox Code Playgroud)