1. 程式人生 > >Laravel 一步步寫Laravel CMS(二)——後臺文章釋出

Laravel 一步步寫Laravel CMS(二)——後臺文章釋出

Laravel Administrator在後臺集成了很多的功能,於是我們不需要那麼多配置,接下來讓我們做一個如下所示的,文章釋出:

建立一個Migrations

執行下面的程式碼
php artisan migrate:make create_posts_table

修改這個資料表
<?php

use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreatePostsTable extends Migration {

	public function up()
	{
		Schema::create('posts',function(Blueprint $table)
		{
			$table->increments('id');
			$table->string('author')->default('admin');
			$table->longtext('post_content');
			$table->text('post_title');
			$table->timestamps();	

		});
	}

	public function down()
	{
		Schema::drop('posts');
	}

}

我們設定得簡單一點,content和title,放article可能會比content好一點,

建立Posts Class

在modals新建一個Posts.php
<?php

class Posts extends Eloquent {
	public static $rules=array
	(
		'post_title'=>'required',
		'post_content'=>'required',
	);

}

這裡設定標題和內容是必須的,不過作者有時候也是必須的,視個人而定的,我還是比較喜歡簡單有效的這種方法 。

建立posts.php

在app/config/administrator新建一個Posts.php
<?php

return array(

	'title' => '文章',
	'single' => '內容',
	'model' => 'Posts',
	'form_width' => 960,

	'columns' => array(
		'author' => array(
			'title' => '作者',
			'select' => "author",
		),
		'post_title'=>array(
			'title'=>'標題',
			'select'=>'post_title',
		),
		'post_content'=>array(
			'title'=>'內容',
			'select'=>'post_content',
			'limit' => 30, 
		),
		'updated_at'=>array(
			'title'=>'釋出日期',
			'select'=>'updated_at',
			'sort_field'=>'updated_at',
		),
	),


	'filters' => array(
		'author' => array(
			'title'=>'作者',
		),
		'post_title'=>array(
			'title'=>'標題',
			'type'=>'text',
		),
		'post_content'=>array(
			'title'=>'內容',
			'type'=>'text',
		),
		'updated_at'=>array(
			'title'=>'時間',
			'type'=>'date',
		),

	),

	'edit_fields' => array(
		'post_title'=> array(
			'title'=>'標題',
			'type'=>'text',
		),
		'post_content'=>array(
			'title'=>'內容',
			'type'=>'wysiwyg',
		),
	),

);

'title' => '文章',
'single' => '內容',
'model' => 'Posts',
'form_width' => 960,  
前三個就不用多說了,form_wdith批的是編輯時候的寬度,這裡設定的是960,暫時用這個值。 columns 用於展示,也就是剛看到的圖片的左側區

filters 用於右側的篩選,也相當於搜尋

Laravel Administrator type

Administrator型別有以下這些 這裡用的editor是ckeditor