我对实体属性及其含义感到非常困惑。我知道 get 和 set 允许应用程序与 protected 私有(private)属性进行交互,但是添加和删除呢?
运行命令时
php app/console doctrine:generate:entities bundle:entity
有时它会生成 getter 和 setter,有时它会生成添加和删除属性(通常还有 get 方法)。我注意到它有时也取决于与其他实体的关系(即 OnetoMany),但并不总是:-S
在我能找到的 Symfony 文档中没有任何地方解决了这个问题,这导致我经常看到消息“属性“x”和方法之一都不存在并且具有公共(public)访问权限”。谁能简单解释一下?
最佳答案
add
和remove
用于处理集合。例如,如果您的实体(假设 A
)包含 B
元素的集合,则该命令将提供 addB()
和 removeB()
公共(public)方法可帮助您在集合中添加和删除元素。它还将提供一个返回整个集合的 getter。
该命令根据您正在使用的属性的类型
(ArrayCollection、字符串等)生成方法
关于Symfony2 getter、setter、添加和删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27603841/