承接 presta/sonata-saved-filters-bundle 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

presta/sonata-saved-filters-bundle

最新稳定版本:v1.2.0

Composer 安装命令:

composer require presta/sonata-saved-filters-bundle

包简介

A Symfony bundle to allow user to save and share filters in Sonata Admin

README 文档

README

PrestaSonataSavedFiltersBundle will allow your Sonata users to save and share list filters.

Preview

On each admin, you can save current filters to a dedicated database entry, after naming it. Save filter form

When you saved a filter, you can reapply it whenever you want on the admin it was created. Saved filters dropdown

An admin exists where you can see, share, remove filters created in the application. Saved filters admin list

Installation

Install the bundle with the command:

$ composer require presta/sonata-saved-filters-bundle

Enable the bundle:

# config/bundles.php
return [
+    Presta\SonataSavedFiltersBundle\PrestaSonataSavedFiltersBundle::class => ['all' => true],
];

Configuration

Import our Javascripts in your project:

import '../../public/bundles/prestasonatasavedfilters/scripts/app';

This step is highly dependent on how your public assets are built, imported. It's up to you knowing the best way to include it in your project.

Include our action template into the Twig template you configured to be your admin layout:

{% extends '@SonataAdmin/standard_layout.html.twig' %}

{% block sonata_admin_content_actions_wrappers %}
    {{ parent() }}
    {{ include('@PrestaSonataSavedFilters/saved_filters_action.html.twig') }}
{% endblock %}

See related SonataAdmin documentation

Configure to doctrine that what entity will be attached to saved filters config/packages/doctrine.yaml:

<?php

use Doctrine\ORM\Mapping as ORM;
use Presta\SonataSavedFiltersBundle\Entity\SavedFiltersOwnerInterface;
use Symfony\Component\Security\Core\User\UserInterface;

#[ORM\Entity]
class User implements UserInterface, SavedFiltersOwnerInterface
{
}
# config/packages/doctrine.yaml
doctrine:
  orm:
    resolve_target_entities:
      Presta\SonataSavedFiltersBundle\Entity\SavedFiltersOwnerInterface: 'App\Entity\User'

See related DoctrineBundle documentation

Add the admin to the menu, where you want it:

# config/packages/sonata_admin.yaml
sonata_admin:
    dashboard:
        groups:
          the_group_in_which_you_want_the_admin:
                items:
                    - presta_sonata_saved_filters.saved_filters

If you're using a security-layer, grant the roles ROLE_PRESTA_SONATA_SAVED_FILTERS_SAVED_FILTERS_LIST and/or ROLE_PRESTA_SONATA_SAVED_FILTERS_SAVED_FILTERS_ALL to the eligible users.

Finally, update your schema to create the tables required for our entities:

$ bin/console doctrine:schema:update 

Or create a migration if you have DoctrineMigrationsBundle installed:

$ bin/console doctrine:migrations:diff
$ bin/console doctrine:migrations:migrate

This project is supported by PrestaConcept

Released under the MIT License

统计信息

  • 总下载量: 14.76k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 7
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-10-10