presta / sonata-bookmarks-bundle
Sonata Admin 允许用户保存和分享书签的 Symfony 扩展包
v1.0.0
2024-07-30 13:25 UTC
Requires
- php: ^8.1
- doctrine/orm: ^2.7|^3.2
- sonata-project/admin-bundle: ^4.22
- sonata-project/doctrine-orm-admin-bundle: ^4.9
- symfony/framework-bundle: ^6.3|^7.1
- symfony/validator: ^6.3|^7.1
- symfony/yaml: ^6.3|^7.1
- twig/twig: ^3.5
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^9.5
- symfony/browser-kit: ^6.3
- symfony/css-selector: ^6.3
- symplify/easy-coding-standard: ^11.3
This package is auto-updated.
Last update: 2024-08-30 14:41:32 UTC
README
PrestaSonataBookmarksBundle 允许您的 Sonata 用户在管理界面中保存书签。
预览
在每个管理界面中,您可以为页面保存书签到专用数据库条目,并为其命名。
安装
使用以下命令安装扩展包
composer require presta/sonata-bookmarks-bundle
启用扩展包
# config/bundles.php return [ + Presta\SonataBookmarksBundle\PrestaSonataBookmarksBundle::class => ['all' => true], ];
配置
将我们的 JavaScript 导入您的项目中
import '../../public/bundles/prestasonatabookmarks/scripts/app';
这一步高度依赖于您如何构建和导入公共资产,取决于您知道如何将其包含在您的项目中。
将我们的操作模板包含到您配置为管理布局的 Twig 模板中
{% extends '@SonataAdmin/standard_layout.html.twig' %} {% block sonata_top_nav_menu %} <ul class="nav navbar-nav"> <li>{{ include('@PrestaSonataBookmarks/admin/bookmark_action.html.twig') }}</li> </ul> {{ parent() }} {% endblock %}
参见相关的 SonataAdmin 文档
配置 doctrine 以确定将哪个实体附加到书签 config/packages/doctrine.yaml
<?php use Doctrine\ORM\Mapping as ORM; use Presta\SonataBookmarksBundle\Entity\BookmarkOwnerInterface; use Symfony\Component\Security\Core\User\UserInterface; #[ORM\Entity] class User implements UserInterface, BookmarkOwnerInterface { }
# config/packages/doctrine.yaml doctrine: orm: resolve_target_entities: Presta\SonataBookmarksBundle\Entity\BookmarkOwnerInterface: 'App\Entity\User'
参见相关的 DoctrineBundle 文档
最后,更新您的模式以创建我们的实体所需的表
bin/console doctrine:schema:update
或者如果您已安装
DoctrineMigrationsBundle
,则创建迁移bin/console doctrine:migrations:diff bin/console doctrine:migrations:migrate
本项目由 PrestaConcept 支持
在 MIT 许可证 下发布