我有一个command
(置于Command / filename中),可以从命令行调用。该函数基本上克隆实体并以通用方式修改其某些功能,例如创建日期等。
为了使这段代码可以重复使用,我需要将这个函数移到command
之外但是我对它的放置方式存在冲突。我希望它在逻辑上最有意义,能够轻松找到这个功能。
我可以创建一个帮助目录并开始在那里放置代码,或者可能是实体目录中的存储库目录,或者只是将代码放在实体本身上?
我只是想知道那里的一些Symfony退伍军人会如何安排他们的代码。
foreach ($postcodeGeoLocations as $postcode => $geoLocation) {
$location = new Location();
$location->setLatitude($geoLocation['latitude']);
$location->setLongitude($geoLocation['longitude']);
$newAddress = clone $address;
$newAddress->setLocation($location);
}
答案 0 :(得分:2)
我通常使用不同的捆绑包设置一个Web项目:AdminBundle,FrontendBundle,CoreBundle。在这一点上,了解服务的最终结果是微不足道的。
就文件夹结构而言,我通常将服务放在与Controller相同级别的Service文件夹中。
警告:它们通常是小型的,专注的服务,只考虑单一责任。代码"模型和助手之间的中途"在转变为服务之前,可能仍需要一些抛光。