Symfony2 getter、setter、添加和删除

标签 symfony doctrine entity relationships

我对实体属性及其含义感到非常困惑。我知道 get 和 set 允许应用程序与 protected 私有(private)属性进行交互,但是添加和删除呢?

运行命令时

php app/console doctrine:generate:entities bundle:entity
有时它会生成 getter 和 setter,有时它会生成添加和删除属性(通常还有 get 方法)。我注意到它有时也取决于与其他实体的关系(即 OnetoMany),但并不总是:-S

在我能找到的 Symfony 文档中没有任何地方解决了这个问题,这导致我经常看到消息“属性“x”和方法之一都不存在并且具有公共(public)访问权限”。谁能简单解释一下?

最佳答案

addremove用于处理集合。例如,如果您的实体(假设 A)包含 B 元素的集合,则该命令将提供 addB()removeB() 公共(public)方法可帮助您在集合中添加和删除元素。它还将提供一个返回整个集合的 getter。

该命令根据您正在使用的属性的类型(ArrayCollection、字符串等)生成方法

关于Symfony2 getter、setter、添加和删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27603841/

相关文章:

symfony - 如何从模板中的 Twig 的 FormView 访问底层对象?

php - 如何在 Symfony 4 中记录登录失败?

php - 我是否正确地执行了 Doctrine 子类?为什么会出现错误?

ios - 核心数据 : How to structure a data model with a parent entity

php - Symfony 可选约束未按预期工作

php - 两个 MySQL 表之间的最长前缀

forms - 使用Doctrine的symfony 1.4形式中的奇怪的多对多行为

php - LEFT JOIN 后的 ORDER BY 不能在浏览器中工作但在 SQL 中工作

java - 如何在 IntelliJ 中使用我的 JPA 实体填充数据库

cocoa - 在 Cocoa 中将核心数据实体导出为文本文件