ryanbadger/laravel-admin

一个简单灵活的Laravel后台管理模块。

1.0.6 2024-05-10 08:58 UTC

This package is auto-updated.

Last update: 2024-09-10 09:39:42 UTC


README

此Laravel Admin包简化了Laravel应用中模型的管理。它提供了一个动态的后台面板,用于管理具有基本CRUD操作的模式,并针对有效处理不同数据类型进行了优化。

特性

  • 动态模型检测和CRUD生成。
  • 基于模型属性数据类型的自定义输入类型。
  • 简化设置过程,非常适合快速开发和原型制作。

安装

要安装此包,请按照以下步骤操作

步骤 1:安装包

在您的Laravel项目中运行以下命令

composer require RyanBadger/laravel-admin

步骤 2:发布资产并运行迁移(用于媒体支持)

发布包的资产

php artisan vendor:publish --tag=laravel-admin-assets

运行迁移

php artisan migrate

这些命令将发布必要的视图和资产到您的Laravel项目中,并为任何模型创建用于文件上传支持的Media模型。

步骤 3:配置您的模型

确保您的模型已正确设置,具有$fillable属性以允许批量赋值,并定义CMS字段。

class YourModel extends Model { 
    protected $fillable = [
        'field1', 
        'field2', 
        'field3'
    ]; 
}
public function cmsFields() {  
    return [
            'title' => [
                'type' => 'text', // Field type (text, textarea, select, checkbox, media, etc.)
                'label' => 'Title', // Human-readable field name
                'editable' => true, // Allow this field to be edited in the CMS
                'required' => true, // Require this field to be filled out
                'show_in_list' => true, // Show this field in the CMS list view
                'searchable' => true, // Make this field searchable
            ],
            'template' => [
                'type' => 'select', // Show a select dropdown with the options you define
                'label' => 'Page Template',
                'options' => [
                    'page' => 'Default Page',
                    'videos' => 'Video Page'
                ],
                'editable' => true,
                'required' => true,
                'show_in_list' => true,
            ],
            'show_in_nav' => [
                'type' => 'checkbox', // Displays a bootstrap toggle
                'label' => 'Show in Navigation',
                'editable' => true,
                'required' => true,
            ],
            'body' => [
                'type' => 'textarea', // Displays a CKEditor WYSIWYG
                'label' => 'Body',
                'editable' => true,
                'required' => false,
                'searchable' => true,
            ],
            'media_upload' => [
                'type' => 'media', // Displays a Dropzone.js uploader
                'label' => 'Media Upload',
                'multiple' => true,
                'max_files' => 99,
                'max_file_size' => 99, // in MB
                'allowed_types' => 'image/jpeg,image/png,image/gif',
                'editable' => true,
                'required' => false,
            ],
        ];

用法

安装完毕后,最后一步是为您的管理员用户授权访问。

此包会检查您的“users”表/模型中的is_admin值。您应该自己创建它,或者如果您更喜欢不同的方法,则更新CMS中间件。

登录后,在您的浏览器中导航到/admin/以管理您的应用。

仪表板

在以下位置访问仪表板

/admin/dashboard

此仪表板显示了所有模型及其基本统计信息的摘要。

贡献

欢迎贡献。请打开一个问题或提交一个带有您的改进的pull request。

许可证

此Laravel Admin包是开源软件,根据MIT许可证授权。