visualplus / board
Requires
- illuminate/html: >=4.2
This package is not auto-updated.
Last update: 2024-09-14 18:26:00 UTC
README
这是一个使用标签轻松创建论坛的包。
安装方法
composer require visualplus/board
配置方法
config/app.php에 있는 providers에 Visualplus/Board/ServiceProvider::class 추가
这是一个复制迁移文件以连接基本皮肤和创建基本数据库表的步骤。(如果您不需要基本皮肤和迁移文件,则可以不进行此步骤。)
添加 ServiceProvider 后
php artisan vendor:publish
执行命令后,在 database/migrations 中将生成 create_board.php 文件。该文件有助于创建论坛设置表、帖子表和帖子关联表。
查看 create_board.php,可以看到用于启动论坛的基本表结构已定义。
每个论坛都需要一个帖子存储表和一个文件存储表,必须在管理页面指定表名。(文件存储表使用帖子表名 + '_files' 统一。)
管理页面设置
创建一个控制器并继承 Visualplus\Board\AdminController。
php artisan make:controller BoardAdminController
class BoardAdminController extends \Visualplus\Board\AdminController
{
...
}
模型绑定
为了使用 AdminController,必须将模型绑定。
protected $model = '';
写入论坛设置模型。如果您想使用默认提供的表格模型,则请进行以下设置。
php artisan make:model BoardConfig
protected $model = '\App\BoardConfig';
请按照以下方式设置。
论坛页面设置
创建一个控制器并继承 Visualplus\Board\BoardController。
php artisan make:controller FreeBoardController
class FreeBoardController extends \Visualplus\Board\BoardController
{
...
}
选项更改
BoardController 提供了一些选项。
论坛设置模型绑定
protected $config_model = '';
每个论坛控制器都需要指定用于获取其设置值的论坛设置模型。此值没有默认值,必须始终设置。
如果使用了提供的迁移文件
php artisan make:model BoardConfig
protected $config_model = '\App\BoardConfig';
请进行如下设置。
论坛模型绑定
// 게시글 테이블 모델
protected $articles_model = 'Visualplus\Board\Articles';
// 게시글 파일 테이블 모델
protected $article_files_model = 'Visualplus\Board\ArticleFiles';
需要存储帖子内容和附件的模型。默认使用提供的模型,无需单独指定表名。(管理员页面中设置相应论坛的表名。)
如果您想使用自定义模型,请更改以上值。
皮肤。
初始论坛皮肤是基本皮肤,外观并不华丽。因此,您需要根据自己的风格进行定制。论坛的皮肤是
- index.blade.php -> 帖子列表
- create.blade.php -> 创建帖子,编辑帖子
- show.blade.php -> 查看帖子
需要这三个文件。创建皮肤后,指定可访问的视图位置即可。例如,'board::'与包内的'views'目录映射,views下有'basic'目录。因此,'board::basic'引用的是'vendor/visualplus/board/src/views/basic',该目录中应包含上述三个文件。
皮肤可以在管理页面创建论坛时设置。
每页显示的项目数量。
protected $itemsPerPage = 10;
默认每页显示10个帖子。请根据需要调整此值。
文件上传路径
protected $uploadPath = '../storage/app/board/';
在撰写帖子时附带的文件默认存储在 storage/app/board 目录中。文件名是当前时间戳 + 上传文件的扩展名。
请更改此值以修改附件存储位置。
路由设置
Route::resource('board/admin', '게시판 관리자 컨트롤러');
Route::resource('board/{bo_id}/board', '게시판 컨트롤러');
请进行如下设置。
访问
board/[게시판 설정에 등록된 게시판 id값]
即可。
使用 Naver Smart Editor
在要使用 Smart Editor 的视图中输入以下内容。将 textarea 放入所需位置后包含即可。
参考 basic/create.blade.php。
@include ('board::plugins.smart_editor.editor', ['name' => [컨트롤 명], 'value' => [초기값]])