Doctrine ORM是一个PHP ORM。虽然Doctrine 1.2使用Active Record模式,但Doctrine ORM 2及更高版本使用Data Mapper模式。 Doctrine项目是一个开源库和工具的集合,用于处理用PHP编写的数据库抽象和对象关系映射。
我在使用 symfony 框架创建数据库时遇到问题[已关闭]
结构: 学生:名字、姓氏、出生日期、图像。 类:名称、部分 课程:名称、描述 成绩:学生、课程、班级 所以我正在努力在 symfony 中使用 do 创建这个数据库...
ParseError:语法错误,意外的“EntityManagerInterface”(T_STRING),期望函数(T_FUNCTION)或常量(T_CONST)
此代码会产生错误: /** * @var EntityManager接口 */ 私有 EntityManagerInterface $entityManager; 公共函数 __construct(EntityManagerInterface $entityManager) { $这个->
Symfony3 提交后丑陋的 URL 路径(URL 重写或路由)
我正在使用: Symfony v3.0.6; 教义 v2.5.4 我在教义查询中使用 LIKE 构建了站点搜索。 // 我的搜索查询 $query = $em->createQueryBuilder() ->选择('i') ->来自('
给定一个类名,例如Domain\Model\User,是否有一种编程方法可以知道该类是否被标记为Doctrine实体? 我可以检查 @Entity 注释是否存在,但我
Symfony 7.1 - Doctrine 2.13 自动映射功能弃用
我正在 Symfony 7.1 中开发一个项目,自上次更新以来,我遇到了以下弃用的小问题: 自 Doctrine/doctrine-bundle 2.13 起:启用控制器
Doctrine 2 设置 ManyToOne 关系时,category_id 始终为 NULL
当我插入新条目时,如果我设置多对一关系“类别”,我将无法填写“categoryId”字段,为什么? 这是具有以下关系的实体: 当我插入新条目时,如果我设置 ManyToOne 关系“类别”,我将无法填写“categoryId”字段,为什么? 这是具有关系的实体: <?php namespace Application\Entity; use Doctrine\ORM\Mapping as ORM; /** * Item * * @ORM\Table(name="item") * @ORM\Entity */ class Item extends Base { /** * @ORM\ManyToOne(targetEntity="Category") */ private $category; /** * @var integer * * @ORM\Column(name="id", type="integer", nullable=false) * @ORM\Id * @ORM\GeneratedValue(strategy="IDENTITY") */ public $id; /** * @var string * * @ORM\Column(name="name", type="string", length=40, nullable=false) */ public $name; /** * @var integer * * @ORM\Column(name="category_id", type="integer", nullable=true) */ public $categoryId; } 这是我为生成 getter 和 setter 所做的基类,并允许 $entry->name = 'yo' 而不是 $entry->setName('yo'); <?php namespace Application\Entity; class Base { public function __call($method, $args) { if (preg_match('#^get#i', $method)) { $property = str_replace('get', '', $method); $property = strtolower($property); return $this->$property; } if (preg_match('#^set#i', $method)) { $property = str_replace('set', '', $method); $property = strtolower($property); $this->$property = $args[0]; } } public function fromArray(array $array = array()) { foreach ($array as $key => $value) { $this->$key = $value; } } } 这就是我保存新项目的方式: $item = new \Application\Entity\Item(); $item->name = 'Computer'; $item->categoryId = '12'; $this->em->persist($item); $this->em->flush(); 出了什么问题? 你做错了!使用 Doctrine,您不使用category_id 列(及类似列),而是使用关系。教义会照顾专栏。 您必须阅读文档,但正确的方法是: $category = new Category() ; $category->setName("Food") ; $item = new Item() ; $item->setName("Pizza") ; $item->setCategory($category) ; $em->persist($item) ; $em->flush() ; 这是 100% 正确的做事方式,你甚至不需要坚持新创建的类别(Doctrine 会为你做这件事)。但手动尝试设置category_id列是完全错误的做法。 还有一个: 不要尝试制作 Doctrine2 的 ActiveRecord。当我从 D1 切换到 D2 时,我想做同样的事情,但最后发现这是浪费时间。看起来你正在尝试制作自己的框架;不要那样做。改为学习 Symfony2;这并不容易,但值得花时间。
““App\Entity\Brand”类中的“isEnabled”方法需要 0 个参数,但应该只接受 1 个”
我正在尝试使用学说在数据库中保存一个简单的表格。我创建的实体 - 让其命名为 Brand - 使用 php bin/console make:entity 有一个布尔属性: #[ORM\Entity(repositoryClass:
原则 2 到原则 3 = HINT_FORCE_PARTIAL_LOAD 不可用
我在原则 2 中为我的查询构建器提供了这个 $query = $query->setHint(Query::HINT_FORCE_PARTIAL_LOAD, 1); 自从更新到学说 3 后,它就不再起作用了。 VSCODE 找不到参数...
Symfony 7.1 命令 php bin/console 学说:映射:导入
我正在使用 symfony 7.1,我想从现有表生成实体,但它似乎不起作用。首先我运行这个命令 php bin/console 学说:mapping:import "App\Entity"
CodeIgniter 模型与 Symfony/Doctrine 模型
背景: 我使用 CodeIgniter 构建了我的 Web 应用程序,因为它是我可以轻松掌握并快速上手的唯一框架。现在看到令人难以置信的先进功能......
event.DEBUG、doctrine.DEBUG、security.DEBUG 使 dev.log 文件变得非常大
我在 Symfony2 上运行一个应用程序。每当我加载页面或控制器时,dev.log 文件就会充满成千上万的此类行: [2017-10-12 15:26:08] event.DEBUG: 通知事件“k...
我正在使用 Symfony2.2 和 StofDoctrineExtensionsBundle(以及 Gedmo DoctrineExtensions)。 我有一个简单的实体 /** * @ORM\实体 * @Gedmo\Loggable * @ORM\Table(名称=“人”) */ 类人{...
Symfony - 在 Doctrine EntityRepository 中注入和访问 DIC 服务
这与用 Symfony 2.2.1、原则 2.3.3 编写的遗留项目相关。 我需要在 EntityRepository 类之一中访问 DIC @service。 我可以将此服务或容器注入...
我对symfony2和doctrine2比较陌生,并对某些事情感到困惑...... 当在开发环境中访问某个页面时,我按预期获取了该页面的内容,但是当我尝试打开
问题是:我没有成功使用 symphony 2.0 安装 stof 包 我如何进行: 我在 deps 文件中添加以下行: [Gedmo 学说扩展] git=https://github.com/l3pp4rd/
我有一个映射到实体的表单('data_class' => ...)。我已经在实体的属性上设置了验证器(通过注释)。 该实体有一个属性(nameTranslations)为 doctr...
查看了这方面的文档,但找不到我需要的明确答案,所以不确定是否可能,但这就是我想要实现的目标: 我有一份客户名单
我有这样的疑问: SELECT DATE_FORMAT(exp_date, "%Y-%m") AS 月份,sum(exp_total) FROM 导出 GROUP BY DATE_FORMAT(exp_date, "%Y-%m"); 我尝试将其转换为 Symfony 学说,如下所示: $q...
我正在将标题从 CSV 文件保存到数据库中。 在 Ubuntu 上用 less 查看该文件的开头如下: 约会,超市,特色菜,外卖,咖啡厅/餐厅 1/06/2019,0.0391759...
Doctrine 使用短名称空间别名“App:MyEntity” 问题:在 Doctrine/persistence 2.x 中已弃用且不受 persistence:3.x 支持的功能
我正在我的 sf 6.4 项目中更新和开发 CLIfunction,它返回: 在 NotSupported.php 第 31 行: ...