问题标签 [doctrine-extensions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Doctrine 生成实体命令会产生额外的 src/Gedmo 文件,这会导致命令停止工作,直到删除文件夹
我在独立的 noframework 应用程序中使用带有Gedmo 扩展的 Doctrine。自动加载是通过 composer, composer.json 内容完成的:
App 核心类放在 /src 目录,composer 文件放在 /vendor 是通过工厂配置的 Doctrine,其主要代码如下:
我的实体是:
我的 cli-config.php 配置正确。我运行学说 cli 工具通过命令生成实体样板代码:
“供应商/bin/doctrine” orm:generate-entities src
它回答我:
处理实体“Gedmo\Translatable\Entity\MappedSuperclass\AbstractPersonal\Translation”</p>
处理实体“Gedmo\Translatable\Entity\MappedSuperclass\AbstractTranslation”</p>
处理实体“Gedmo\Loggable\Entity\MappedSuperclass\AbstractLogEntry”</p>
处理实体“Gedmo\Tree\Entity\MappedSuperclass\AbstractClosure”</p>
处理实体“App\Entity\ProductCategory2”</p>
实体工作正常,但命令将额外文件添加到我的 src 文件夹中:
如果我通过上述命令再次生成实体,则会出错。
PHP 致命错误:无法在第 9 行的 \src\Gedmo\Loggable\Entity\MappedSuperclass\AbstractLogEntry.php 中重新声明类 Gedmo\Loggable\Entity\MappedSuperclass\AbstractLogEntry
要修复它,我需要<ROOT>/src/Gedmo
先删除目录。
任何人都可以帮助找到配置中的错误以防止出现这个烦人的额外文件吗?
感谢帮助
symfony - 准备使用 Doctrine 扩展树更新层次类别的选项
我在 symfony 项目中使用Doctrine 扩展树以分层方式管理类别。
尽管如此,我还没有找到如何简单地管理 twig 中的添加/编辑部分:我可以使用childrenHierarchy()
方法显示 html 树结构,但我想更进一步,有这样的东西:
(+) 将打开一个显示(类别)文本字段的模式,允许在所选父级上分支此元素。
我没有在文档中看到(如果可能的话,我也没有看到)将此方法childrenHierarchy()
与允许额外 html 的选项和 ajax 调用一起使用。
我的实体是基本的:
我的控制器目前也是基本的,这是我认为我可以调整选项的地方:
模板是:
如果有人有建议或线索,请提前感谢您。
symfony - 如何在 Sonata Admin 中使用可翻译字段?
我使用“Knp Doctrine2 Behaviors”进行实体翻译,使用“A2LiX Translation Form”翻译 Sonata Admin 表单中的实体。一切正常。但是我不知道应该在 Admin 类的“configureDatagridFilters”和“configureListFields”方法中添加什么?
当然,例如 $datagridMapper->add('title'); 不起作用,因为它是我的“Post”实体的可翻译字段,它位于 PostTranslation 类中,但 Admin 类用于 Post 实体。Post 实体中的 __call 方法没有帮助,它似乎在管理类中不起作用。
$datagridMapper->add('translations.title'); 不会导致错误并且存在实体行,但<a> </a>
标签之间没有任何内容:
以防万一,这是我的 Post、PostTranslation 和 PostAdmin 类:
symfony - 可上传的 stof 学说扩展 - 文件“”不存在
我的问题
我很想stof/StofDoctrineExtensionsBundle
和symfony3
. 因此,$form->bind
我尝试使用 stof 文档中的示例而不是使用$form->handleRequest
. 提交表单后不幸的是,我收到以下错误:
文件“”不存在
我会很感激你告诉我我做错了什么。也许有人会这么好心并为我提供工作上传脚本的示例?
我的代码
我的控制器代码如下所示:
使用以下函数构建表单:
和我的实体类:
我正在使用此处列出的默认配置https://symfony.com/doc/master/bundles/StofDoctrineExtensionsBundle/index.html。
doctrine-orm - 实体定义中的 UploadableFilePath 字段被忽略(可上传的学说扩展)
概括
我的问题与标记有@Gedmo\UploadableFilePath
注释的实体字段被 Symfony3 忽略的事实有关。我正在为 Doctrine2 使用 Uploadable 行为扩展。
代码
在我的实体中,我有:
症状
起初,我注意到虽然该path
列不是在 MySQL 中生成的。
然后我发现每当我删除name
字段时,我都会收到以下错误:
[Gedmo\Exception\InvalidMappingException] 类“AppBundle\Entity\plik”必须具有 UploadableFilePath 或 Uploadable FileName 字段。
文档
在doctrine-uploadable
文档中我看到:
@Gedmo\Mapping\Annotation\UploadableFilePath:此注解用于设置哪个字段将接收文件的路径。该字段必须是“字符串”类型。需要设置此注释或 UploadableFileName 注释。
所以看来我应该只能设置$path
字段。
帮助请求
请告知为什么UploadableFilePath
没有生成字段,为什么我不能删除该$name
字段?
php - 原则 FIND_IN_SET 导致错误:预期的字符串结尾,得到 '('
我在 Symfony2 中有以下教义查询:
但这会导致以下错误:
和:
我用FIND_IN_SET
beberlei 的学说扩展,以便能够在查询中使用它。
任何想法为什么会发生这种情况?
更新:
以这种方式使用FIND_IN_SET
SELECT 作为别名:
导致以下错误:
symfony - 学说 2 可与领域关联
我有 ORM:
但这在 prod 环境中不起作用(错误:无法找到 slug [master] 作为实体中的映射属性 - Something\SomeBundle\Entity\MyTable)。为什么?如何解决?
doctrine-orm - 如何使用 symfony3、doctrine2 和 stofDoctrineExtensionsBundle 获取 Gedmo 树元素的路径
我正在使用 Symfony v3.0.4、Doctrine v2.5.4 和 StofDoctrineExtensionsBundle [1] 来管理树结构。
为了设置树结构,我使用了 Symfony.com [2] 上的文档,然后是 GitHub [3] 上的文档。
然后我继续进行树设置 - 使用示例 [4] 中的树实体并使用 [5] 中的代码创建树。
我没有使用 [6] 和 [7],因为它似乎没有必要(据我所知,没有它的树的工作和显示)。见更新。
到目前为止,我在数据库中有一个树结构并显示它,我修改了示例 [8]。像这样:
如果我像这样修改一行:
为了获得树的每个元素的路径,我得到错误:
- [1] stofDoctrineExtensionsBundle 在 GitHub 上;
- [2] Symfony.com 上的 stofDoctrineExtensinsBundnle 文档;
- [3] GitHub 上的 Gedmo 树文档;
- [4] Gedmo 树 > 树实体示例;
- [5] Gedmo 树 > 基本使用示例;
- [6]未使用:Gedmo 树 > 树存储库;
- [7] Gedmo 树 > 使用抽象存储库;
- [8]树 html 输出示例;
- [9] NestedTreeRepository 有方法 getPath()。
正如在 [9] NestedTreeRepositry 中看到的,有一个方法 getPath()。
更新:我尝试了 [6] 但没有设法设置它。然后我尝试 [7] 设置好,但仍然错误仍然存在!
请指教。感谢您的时间和知识。
doctrine - 为什么 DoctrineExtensions Blameable 急切地获取所有 created_by 用户
在我的用户类中使用以下特征时
每当我查询一个用户时,createdBy 用户也会被获取,这会递归地进行..
因此,如果由 B 创建的用户 C,由 A 创建的用户 C 被查询。将获取所有三个用户...
有没有办法禁用始终获取引用的用户?
tree - Gedmo Tree getPath 错误:节点与此存储库不相关 500 内部服务器错误 - InvalidArgumentException
我收到错误:
更新 1:无论我设置具有特征的树存储库还是扩展抽象存储库,错误都是一样的。
更新 2:完整堆栈跟踪http://pastebin.com/TtaJnyzf
我想从数据库中输出具有树结构的 html 树,特别是我需要获取从根到选定节点的路径。据我了解,这是通过 getPath() 函数完成的。
我在用:
- Symfony v3.0.6;
- 教义 v2.5.4
- StofDoctrineExtensionsBundle [1]
为了管理树结构。
为了设置树结构,我使用了 Symfony.com [2] 上的文档,然后是 GitHub [3]、[4]、[5]、[6] 上的文档。
到目前为止,我在数据库中有一个树结构,我得到了这样的 html 树:
我更改了两行以显示从树元素的根到所选项目的路径
如 [7] 和 [8] 中所见,存在应该将元素数组从根返回到所选项目的函数 getPath()。
我认为问题可能出在这个代码块上:
- [1] stofDoctrineExtensionsBundle在 GitHub 上;
- [2] stofDoctrineExtensinsBundle 文档;
- [3] Gedmo 树文档;
- [4] Gedmo 树 > 树实体示例;
- [5] Gedmo 树 > 基本使用示例;
- [6]树html输出示例;
- [7] NestedTreeRepository 使用NestedTreeRepositoryTrait
- [8] NestedTreeRepositoryTrait 具有函数“getPath()”。
请指教。感谢您的时间和知识。