我尝试在Symfony 3.0.1中生成getter和setter
当我运行命令
时<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-sanitize.min.js"></script>
<div ng-app="myApp">
<div ng-controller="MyCtrl">
<div class="label">Edit mode :</div>
<textarea ng-model="post1" style="width:100%;" rows="5"></textarea><br />
<div class="label">Binding mode :</div>
<div ng-bind-html="post1"></div><br />
<div class="label">Data will be send to the server :</div>
<div>{{post1}}</div><br />
<div class="label">Logs (if needed) :</div>
<div ng-repeat="d in logs">
<p>{{($index+1) + ". " + d}}</p>
</div>
</div>
</div>
我有错误
php bin/console doctrine:generate:entities VendorName/MyBundle/EntityName
哪里出错?
编辑-1:首先使用YAML格式生成实体
编辑-2:我尝试为供应商包生成getter和setter
我也尝试使用命令 php bin / console doctrine:generate:entities VendorNameMyBundle:EntityName 并有另一个错误:
Namespace "VendorName\MyBundle\EntityName" does not contain any mapped entities.
答案 0 :(得分:2)
正如John Pancoast在answer中指出的另一个问题:
在执行代码生成时,Doctrine不支持PSR-4。它与将类名称空间映射到文件系统路径以及PSR-4如何允许不直接映射到文件系统的类/命名空间路径有关。
澄清解决错误消息所需的确切内容;您必须编辑捆绑包的composer.json
文件,并更改捆绑包的文件夹结构。
在composer.json
中将psr-4
更改为psr-0
:
"autoload": {
"psr-4": { "Acme\\Bundle\\AwesomeBundle\\": "" }
},
为:
"autoload": {
"psr-0": { "Acme\\Bundle\\AwesomeBundle\\": "" }
},
从以下位置更改捆绑包的文件夹结构:
vendor
+--acme
+--awesome-bundle
|--Controller
|--Entity
为:
vendor
+--acme
+--awesome-bundle
+--Acme
+--Bundle
+--AwesomeBundle
|--Controller
|--Entity
以下命令将不再抛出异常:
bin/console doctrine:generate:entities AwesomeBundle
答案 1 :(得分:0)
你有错误的命令,你试图生成实体,但你提供一个实体的类名。对所有实体尝试以下操作:
php bin/console doctrine:generate:entities VendorName/MyBundle
或者如果您只想要一个实体:
php bin/console doctrine:generate:entity VendorName/MyBundle/EntityName
答案 2 :(得分:-1)
Symfony 3.22 with src / AppBundle / Entity / User.php
如果使用ORM添加新字段
**/**
* @ORM\Column(name="last_login", type="datetimetz")
*/
private $lastLogin;**
只需使用
使用php bin / console doctrine:generate:entities AppBundle
它将检查所有实体r并更新getter和setter
然后使用
php bin / console doctrine:schema:update 来更新数据库
使用
PROD环境中的php bin / console doctrine:schema:update --force