问题标签 [easyadmin]
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.
symfony - 使用 EasyAdminBundle 查询 DQL 过滤器
我有一个Page
具有属性的学说实体category
。我使用 EasyAdminBundle 来修改页面。有 4 个固定类别,我希望每个类别都有一个单独的列表视图。在菜单栏中,每个类别都应单独显示。
我知道我可以通过创建具有相同学说类的单独实体并给它们每个单独的 DQL 过滤器来实现这一点,如下所示:
YAML 配置:
但是,我不想每次更改某些内容时都将所有其他配置复制并粘贴到每个实体。我想做这样的事情:
YAML 配置:
现在,我尝试了以下方法。它在某种程度上有效,但是当我开始在列表视图中搜索时,过滤器不再起作用。我也认为这不是最优雅的解决方案。
YAML 配置:
重写 listAction 方法:
我看到 EsayAdminExtensionBundle 具有可以添加到 URL 的过滤器,但我不知道如何从菜单配置中执行此操作。有人知道可能的解决方案吗?谢谢!
php - 如何使用 symfony 3 自定义 eazyadmin 包中的角色
我正在使用 symfony 3 和 phpMyAdmin,我正在尝试基于 ROLE_ADMIN 或 SUPPER_ADMIN_ROLE 自定义 EasyAdmin 捆绑包的菜单部分。任何帮助??!
php - 删除在表单简单管理包中不起作用的实体
我有这个代码:
添加和返回链接工作得很好。唯一的问题是删除按钮。当我尝试删除时,我会重定向到用户实体列表,而不会删除当前用户。我没有任何错误。请帮我。提前谢谢
symfony - EasyAdminBundle: how to redirect back to form
In the admin panel created with EasyAdminBundle, the administrator can create a new Booking. I want to add an availability check (via a service) before this new booking instance is persisted into the database. If this check returns false, the admin should be redirected back to the form.
I have extended the EasyCorp\Bundle\EasyAdminBundle\Controller\AdminController
class and overridden the persistEntity()
function:
php - 编辑表单忽略验证注释
在一个简单的用户管理实现(Symfony 4.1.7,easyadmin 1.17.16)中,编辑表单会忽略实体验证注释,而新表单则不会。例如,如果在提交表单时编辑表单中的电子邮件字段为空,InvalidArgumentException
则会与 message 一起抛出Expected argument of type "string", "NULL" given
。如果从 User 实体中删除了验证注释,也会引发此异常。
新表单中的相同字段为空时返回验证消息Email address is required
。
用户实体属性(某些字段未显示):
easy_admin.yaml(某些字段未显示):
symfony - 如何在 symfony EasyAdmin 中获取自定义表单类型的实体
我正在尝试按照文档中的说明向JSONB
字段添加自定义类型:
form:
fields:
- { property: 'attr', type: 'App\Form\Type\AttrType'}
和类实现:
它工作正常。
但是我有JSONB
列,我不知道存储了多少字段及其类型。
问题:如何让实体进入buildForm
访问权限attr
。需要的数据存在 $builder
,$options
我可以在var_dump()
.
简化的期望结果:
symfony - 如何在复杂情况下创建数据库/实体
我有一个 Symfony 4 应用程序,用户可以在上面查看体育赛事并为这些赛事注册自己。我使用 Doctrine 作为 ORM 和 EasyAdminBundle 作为管理面板。
我很难弄清楚如何构建我的实体以及应该如何将事物存储在数据库中。我有 2 个主要实体,Event
并且Registration
. 我将详细解释这些。
事件
Event
存储有关事件的所有详细信息。所有事件都有一些固定属性,例如:
id
title
description
startDate
endDate
(可选的)isPublic
eventType
如您所见,每个事件都有一个类型。大多数事件都很简单,不包含其他属性。但是,有一个事件类型,我想为其存储一些附加属性。我会complexEventType
从这里开始称这种类型。我将描述我想为这些事件保留什么样的属性:
- 活动需要多少天(这会有所不同)?
- 对于每一天:这一天可以进行哪些活动。这应该可以由管理员在管理面板中进行编辑。有跑步,骑自行车,步行等活动,但应该可以添加其他运动。
- 每个活动都有一个可选的通用选项数组(字符串)。大多数时候,这些代表距离。
一个示例complexEventType
可能如下所示:
- 第 1 天
- 步行
- 5公里
- 8公里
- 12公里
- 跑步
- 10公里
- 12公里
- 16公里
- 骑自行车
- 30公里
- 40公里
- 60公里
- 步行
- 第 2 天
- 步行
- 8公里
- 10公里
- 12公里
- 跑步
- 12公里
- 14公里
- 18公里
- 骑自行车
- 40公里
- 50公里
- 70公里
- 步行
- 第 3 天
- 游泳
- 跑步
- 12公里
- 14公里
- 18公里
- 骑自行车
- 40公里
- 50公里
- 70公里
这里出现了一些问题:
- 我应该将事件子类化而不是保留
type
属性吗? - 如果我子类化,每个事件类型是否应该有一个单独的表?
- 而不是子类化,我是否应该保留该
options
属性并使其可以为空,以便不需要为没有选项的事件设置它? - 如何将选项存储在数据库中?作为 JSON 对象?或者为日子和活动分开表格?
登记
用户可以注册活动。他们的注册将保存在一个Registration
对象中。注册包含以下属性:
id
event
(对事件对象的引用)user
(参考注册用户)
如果 is 的布尔isPublic
值,则该事件是公开的,未经身份验证的用户可以注册。在这种情况下,我想保留一些额外的信息:event
true
firstName
lastName
email
根据 中的eventType
属性event
,需要保存一些额外的属性。例如,一种事件类型发生在国外。对于这种事件类型,我想知道用户是否想留在酒店(布尔值)以及他/她是否可以睡在共享房间(布尔值)。对于另一种事件类型,不保留任何详细信息。对于complexEventType
,我们需要存储用户在哪几天进行的活动,以及每个活动的选择选项(距离)。
我对如何处理这种情况有点不知所措。现在,我创建了一个抽象Registration
实体,它是 和 的子PublicRegistration
类 PrivateRegistration
。PublicRegistration
保留和 之类的属性firstName
,lastName
同时PrivateRegistration
存储指向User
对象的指针。现在,Registration
存储所有可能的选项,它们都是可以为空的。这行得通,但它看起来一点也不好看。我宁愿将选项分开。我正在考虑制作一个RegistrationOptionInterface
. 然后,对于每种事件类型,我可以创建一个实现此接口并添加选项的类。但是,我不知道如何将其保存到数据库中...
谁能指出我正确的方向?以前有没有人遇到过类似的情况,如果有,您是如何解决的?
symfony - 在 Symfony 3.4 Easy Admin bundle 中显示大量实体的总计数
我正在尝试显示实体列表视图的相关实体的计数,但是实体太多了,所以它count($this->relatedEntities)
在实体中耗尽了内存(它做一个简单的)。
知道如何/在哪里可以覆盖ListController
添加QueryBuilder
聚合COUNT()
列吗?
我尝试将AdminController
and hooking 扩展到findAll()
函数中(手动为每个对象添加计数),但这并没有给我一个实体列表而是一个Pagerfanta
对象。
doctrine-orm - Vich 上传程序包:映射不存在
我需要帮助来弄清楚为什么 VichUploaderBundle 映射不存在。我正在使用带有 EasyAdmin 和 ORM 原则的 VichUploaderBundle。我的 vich_uploader.yaml 文件
类调试说有映射
但是映射调试器找不到
这是我的课
这是我的学说安装输出:
php - Symfony 4 easy admin 和 vich uploader bundle 错误
我正在使用带有 symfony4 的 easy-admin 的 vich-uploader 捆绑包。设置后,我在尝试删除或更新实体时收到此错误
属性路径“imageName”中给出的“字符串”类型的预期参数,“NULL”。
对于这种常见情况,应用程序的配置是最容易的。矿山测试实体:
我的简单管理 yaml 配置