基於 Laravel 的企業內容建站系統
PHP 8.1MySQL >=5.0PHP Extension:FileinfoApache/Nginx我們的測試基於 PHP 的 5.6 / 7.0 / 8.0 / 8.1 版本,系統穩定性最好
以下以一個簡單的新聞增刪改查頁面爲例,快速了解 ModStart 開發的大致流程。
class CreateNews extends Migration
{
public function up()
{
Schema::create('news', function (Blueprint $table) {
$table->increments('id');
$table->timestamps();
$table->string('title', 200)->nullable()->comment('');
$table->string('cover', 200)->nullable()->comment('');
$table->string('summary', 200)->nullable()->comment('');
$table->text('content')->nullable()->comment('');
});
}
public function down()
{
//
}
}
class NewsController extends Controller
{
use HasAdminQuickCRUD;
protected function crud(AdminCRUDBuilder $builder)
{
$builder
->init('news')
->field(function ($builder) {
$builder->id('id','ID');
$builder->text('title', '名稱');
$builder->image('cover', '封面');
$builder->textarea('summary', '摘要');
$builder->richHtml('content', '內容');
$builder->display('created_at', '創建時間');
$builder->display('updated_at', '更新時間');
})
->gridFilter(function (GridFilter $filter) {
$filter->eq('id', 'ID');
$filter->like('title', '標題');
})
->title('新聞管理');
}
}
在 routes.php 增加路由信息
$router->match(['get', 'post'], 'news', 'NewsController@index');
$router->match(['get', 'post'], 'news/add', 'NewsController@add');
$router->match(['get', 'post'], 'news/edit', 'NewsController@edit');
$router->match(['get', 'post'], 'news/delete', 'NewsController@delete');
$router->match(['get', 'post'], 'news/show', 'NewsController@show');
在 ModuleServiceProvider.php 中注冊菜單信息
AdminMenu::register(function () {
return [
[
'title' => '新聞管理',
'icon' => 'list',
'sort' => 150,
'url' => '\App\Admin\Controller\NewsController@index',
]
];
});
這樣一個簡單的新聞增刪改查頁面就開發完成了。
我們列舉了常見問題,遇到問題請先參考常見問題
如有其他問題推薦使用官方討論交流羣或在線討論