eugenevdm / nova-comments
用于对模型进行评论的Laravel Nova资源。
Requires
- php: >=7.1.0
- laravel/nova: ^2.0
This package is auto-updated.
Last update: 2024-09-29 05:46:20 UTC
README
本包包含一个内联评论表单,可轻松为任何资源添加评论。想象一下Nova的简单Disqus版本!
评论工具
简单评论面板
需求
此Nova资源工具需要Nova 2.0或更高版本。
安装
您可以通过composer在使用Nova的Laravel应用中安装此包
composer require kirschbaum-development/nova-comments
接下来,我们需要运行迁移。此包的服务提供程序的自动发现有助于完成此操作!
php artisan migrate
最后,任何您想要添加评论的模型都需要为其添加Commentable
特性。
use KirschbaumDevelopment\NovaComments\Commentable; class Post extends Model { use Commentable; // ... }
如果您想发布此包的配置,请运行
php artisan vendor:publish
并选择此包的提供者:KirschbaumDevelopment\NovaComments\NovaCommentsServiceProvider
此包需要有一个评论者,即简单的User
。Nova Comments默认使用App\Nova\User
资源,但可以轻松在可发布的配置文件中更改。
使用方法
本包附带两个组件,即Commenter
和CommentsPanel
。
评论者
第一个,也是最有用的组件是Commenter
。它是一个资源工具,允许您将评论面板直接插入到任何Nova资源中。此面板允许您直接将评论添加到资源,而无需从相应的创建视图中创建。新创建的评论将在评论表单下方显示,并实时更新。
只需在您的Nova资源中添加KirschbaumDevelopment\NovaComments\Commenter
资源工具
namespace App\Nova; use KirschbaumDevelopment\NovaComments\Commenter; class Post extends Resource { // ... public function fields(Request $request) { return [ // ... new Commenter(), // ... ]; } }
现在您可以从任何您已附加Commenter
的资源详情视图中进行评论!祝您评论愉快!
评论面板
为了方便起见,已经为您创建了一个预构建的评论面板。您只需将其添加到您的资源中,即可享受预构建的便利。
namespace App\Nova; use KirschbaumDevelopment\NovaComments\Commenter; class Post extends Resource { // ... public function fields(Request $request) { return [ // ... new CommentsPanel(), // ... ]; } }
当然,您可以完全自由地创建自己的评论面板,但为了快速启动,我们建议使用此面板。
侧边栏导航
有时您可能想隐藏侧边栏中的评论。您可以通过将相应的配置值设置为false轻松完成此操作。请确保首先发布配置。
'available-for-navigation' => false
分页注意事项
由于Nova在分页结果方面的限制,目前无法从配置值设置每次显示的评论数perPage
。Nova的默认值是每页5条。如果您想将其设置为不同的值,例如25,我们建议您扩展Commenter
并使用以下代码设置此值
use KirschbaumDevelopment\NovaComments\Commenter as NovaCommenter; class Commenter extends NovaCommenter { /** * The number of resources to show per page via relationships. * * @var int */ public static $perPageViaRelationship = 25; }
然后使用此类而不是默认的Commenter
类在您的资源中使用。
变更日志
请参阅CHANGELOG以获取有关最近更改的更多信息。
贡献
请参阅CONTRIBUTING以获取详细信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件brandon@kirschbaumdevelopment.com或nathan@kirschbaumdevelopment.com联系,而不是使用问题跟踪器。
致谢
赞助
本软件包的开发由Kirschbaum开发集团赞助,该公司是一家以解决问题、团队建设和社区为目标的开发者驱动公司。了解更多 关于我们 或 加入我们!
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。