标签: easyadmin

EasyAdmin:字段的自定义类型

我想对EA管理实体中的字段使用自定义类型的地雷。

我正在使用SF Flex,因此我的类型已自动连接并正确设置为服务(显示为debug:container)。

现在,我希望在下面执行以下操作easy_admin.yaml

    Menu:
        class: Lch\MenuBundle\Entity\Menu
        help: 'admin.site.menu.help'
        controller: App\Controller\Admin\Site\MenuController
        list:
            fields:
                - title
                - location
        form:
            fields:
                - title
                - location
                - { property: menuItems, type: 'lch_menu_tree' }
Run Code Online (Sandbox Code Playgroud)

在文档中发现除了本机Type或EA之外,您什么都不能放在这里。

如何设置EA以使其在此特定字段中使用我的类型?

forms symfony easyadmin

2
推荐指数
1
解决办法
2069
查看次数

Symfony 4 Easy Admin和Vich Uploader捆绑包错误

我正在使用带有symfony4的easy-admin的vich-uploader捆绑包。设置完成后,尝试删除或更新实体时出现此错误

在属性路径“ imageName”处给定的类型为“字符串”,“ NULL”的预期参数。

对于这种常见情况,应用程序的配置最容易。地雷测试实体:

<?php

namespace App\Entity;

use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\HttpFoundation\File\File;
use Vich\UploaderBundle\Mapping\Annotation as Vich;


/**
 * @ORM\Entity(repositoryClass="App\Repository\TestRepository")
 * @Vich\Uploadable
 */
class Test
{
/**
 * @ORM\Id()
 * @ORM\GeneratedValue()
 * @ORM\Column(type="integer")
 */
private $id;

/**
 * @ORM\Column(type="string", length=255)
 */
private $imageName;

/**
 * @Vich\UploadableField(mapping="test_images", fileNameProperty="imageName")
 * @var File
 */
private $imageFile;

/**
 * @ORM\Column(type="datetime")
 * @var \DateTime
 */
private $updatedAt;


public function getId()
{
    return $this->id;
}

public function getImageName()
{
    return $this->imageName;
}

public function setImageName(string …
Run Code Online (Sandbox Code Playgroud)

php vichuploaderbundle symfony4 easyadmin

2
推荐指数
1
解决办法
445
查看次数

Symfony Easyadmin 角色选择类型字段

我使用easyadmin,我希望字段“role”显示字段类型“radio”中的角色选择,但发生这种类型的错误(数组到字符串转换)(见下图):

注意:数组到字符串的转换

这是我的配置:

easy_admin:
entities:
    User:
        class: AppBundle\Entity\User
        form:
            fields:
                - { property: 'username' }
                - { property: 'email' }
                - { property: 'enabled' }
                -   property: 'plainPassword'
                    type: 'repeated'
                    type_options:
                        type: Symfony\Component\Form\Extension\Core\Type\PasswordType
                        required: false
                        first_options: { label: '%label.password%' }
                        second_options: { label: '%label.password_confirmation%' }
                        invalid_message: fos_user.password.mismatch
                -   property: 'roles'
                    type: 'choice'
                    type_options:
                        mapped: true
                        expanded: true
                        multiple: false
                        choices: { 'Conseiller': 'ROLE_USER', 'Administrateur': 'ROLE_ADMIN' }
Run Code Online (Sandbox Code Playgroud)

有人会为我提供解决方案,以便我可以使用easyadmin显示单选按钮吗?

提前致谢

symfony easyadmin

1
推荐指数
2
解决办法
1万
查看次数

EasyAdminBundle:验证不适用于CKEditorType

在使用EasyAdminBundle创建的管理控制台中,我的表单验证仅适用于没有的字段CKEditorType。一些字段需要编辑,因此我使用FOSCKEditorBundle实现了所见即所得。

有关领域的摘录:

- { property: 'content', type: 'FOS\CKEditorBundle\Form\Type\CKEditorType'} 
Run Code Online (Sandbox Code Playgroud)

当我提交带有空白“内容”字段的表单时,InvalidArgumentException出现错误消息:Expected argument of type "string", "NULL" given.而不是诸如“ 请填写此字段”之类的验证错误

没有CKEditor的相关领域的代码片段:

- { property: 'content' } 
Run Code Online (Sandbox Code Playgroud)

=>验证非常有效。

我的实体字段:

    /**
     * @ORM\Column(type="text")
     * @Assert\NotBlank
     * @Assert\NotNull
     */
    private $content;
Run Code Online (Sandbox Code Playgroud)

Symfony探查器显示此字段确实具有required属性。

如何使用CKEditor字段类型启用验证?

ckeditor symfony symfony4 easyadmin

1
推荐指数
1
解决办法
208
查看次数

EasyAdmin3 / Symfony / Twig - Twig 模板中带有路由名称和参数的 url 生成器

我正在尝试使用一些参数在模板内生成 EasyAdmin3 url,但由于某种原因它们不存在于控制器中。

树枝模板:

<a href="{{ ea_url().setRoute('route_name').set('id', 1) }}">xxx</a>

<a href="{{ ea_url({'routeName': 'route_name', 'id':1}) }}">yyy</a>

Error with missing EA context:
<a href="{{ path('route_name', {'id': 1}) }}">zzz</a>
Run Code Online (Sandbox Code Playgroud)

控制器:

/**
 * @Route("/admin/something/{id}", name="rounte_name")
 */
public function xyz($id = null, Request $request, AdminContext $context)
{
    dd($_GET['id'], $request->request->all(), $context->getRequest()->request->all());
    ...
}
Run Code Online (Sandbox Code Playgroud)

$_GET['id'] 有效,但请求和上下文为空 []。

知道如何使用参数按名称生成路线吗?

谢谢

php symfony twig easyadmin

1
推荐指数
1
解决办法
4070
查看次数

Easy Admin 不显示关系

  • 我正在使用快速通道训练 Symfony 5.2
  • 我正在第 9 步配置 EASY Admin
  • Easy Admin 创建 CRUD 控制器,一个用于会议,一个用于评论(评论属于会议)
  • 问题是,当我创建新的评论 EasyAdmin 时,EasyAdmin 没有建议我选择一个选择列表来选择它所属的会议,并且创建完成时出现 SQL 异常。

symfony easyadmin

1
推荐指数
1
解决办法
1227
查看次数

easyadmin 3 - 按链接实体的属性而不是 id 排序

我有一个实体 Hike 与另一个指定部门有关系

<?php
class Hike
{
    private $id;
    private $name;
    private $description;

    /**
     * @ORM\ManyToOne(targetEntity=Department::class, inversedBy="hikes")
     * @ORM\JoinColumn(nullable=false)
     * @Assert\NotBlank(message="libdepartmentRequired")
     */
    private $department;
    
    // ...
}
Run Code Online (Sandbox Code Playgroud)
<?php
class Department
{
    /**
     * @ORM\Id
     * @ORM\GeneratedValue
     * @ORM\Column(type="integer")
     */
    private $id;

    /**
     * @ORM\Column(type="string", length=3)
     */
    private $department_code;

    /**
     * @ORM\Column(type="string", length=255)
     */
    private $department_nom;

    /**
     * @ORM\OneToMany(targetEntity="App\Entity\Hike", mappedBy="department")
     */
    private $hikes;
    
    // ...
}
Run Code Online (Sandbox Code Playgroud)

在 easyAdmin3 中渲染很好,就像 在此输入图像描述

但是当我排序时,department我看到 easyAdmin3 按部门 ID 排序,我想按department_nom

我看到了很多解决方案,但它们都使用 easyAdmin2 和 easy_admin.yaml …

php easyadmin symfony5

0
推荐指数
1
解决办法
2396
查看次数