建立於蘭花和 Laravel 一個部落格。

AlexandrChernyaev發表於2017-08-01

在過去的六個月中,我開發一個軟體包管理上Laravel的網站,我想分享的是如何在開發幫助的例子。

安裝
首先安裝本身Laravel,為此我們使用命令作曲:
$ composer create-project --prefer-dist laravel/laravel blog
讓我們繼續我們的應用程式目錄和安裝包
$ composer require orchid/platform
它仍然只是指定在我們的配置檔案中的供應商和外牆配置/ app.php

'providers' => [
  // Laravel Framework Service Providers...
  //...

  // Package Service Providers
  Orchid\Providers\FoundationServiceProvider::class,

  // ...

  // Application Service Providers
  // ...
];

和外立面:

'aliases' => [
  // ...
  'Dashboard' =>  Orchid\Facades\Dashboard::class,
  'Alert' =>  Orchid\Alert\Facades\Alert::class,
  'Setting' =>  Orchid\Setting\Facades\Setting::class,
  'Active' => Watson\Active\Facades\Active::class,
  'Image' => Intervention\Image\Facades\Image::class,
];

對於使用者身份驗證,您可以指定封裝模式配置配置/ auth.php

'users' => [
    'driver' => 'eloquent',
    'model' => \Orchid\Core\Models\User::class,
],

或繼承的模型,我喜歡這個選項

namespace App;

use Orchid\Core\Models\User as UserOrchid;

class User extends UserOrchid
{

}

為了充分前進部署在圖形安裝程式中的應用在公共目錄伺服器此執行PHP。
php -S localhost:8000

對於許多人來說,這似乎有些奇怪開始,為什麼不採取一隊工匠的發球局,但不幸的是他沒有動態更新.ENV檔案的功能(如果有人知道如何更新,請給我發電子郵件)

按照以下步驟圖形安裝程式,我們可以指定應用程式的引數,檢查所需的PHP擴充套件,訪問資料庫連線的最新版本的權利,並建立一個管理員。在最後階段,安裝程式將新增一個常數.ENV,大約安裝了哪些蘭花。
如果你喜歡控制和單色屏,我們可以做的,沒有它同樣的動作,挖.ENV編輯和執行以下命令:

php artisan v:p
php artisan migrate
php artisan make:admin

建立一個簡單的部落格
要檢視我們的部落格,我選擇了一個乾淨,安靜的主題清潔部落格上引導。

首先,我們把所有的風格和JavaScript指令碼,這樣就會收集他們webpack'om。標準的資產資料夾中建立社科院風格目錄,但在我們的主題是較少使用。建立一個新的目錄,而不是舊的(順便說一句,引導4轉移到更小青菜),並在JS和少的檔案拷貝,分別。
將建立自己的自舉

npm install bootstrap --save

在app.js附件進行連線和主題檔案:

require('./bootstrap');
require('clean-blog');

要使用我們只需要連線它這樣做,開清潔blog.less並新增樣式檔案:

// Fonts
@import url(https://fonts.googleapis.com/css?family=Lora:400,400i,700,700i&subset=cyrillic);
@import url(https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800);

@import "../../../node_modules/bootstrap/less/bootstrap";
@import "variables.less";
@import "mixins.less";

重新命名app.less清理blog.less標準化。所有我們現在可以構建應用程式。
Webpack.mix.js開啟,寫的宣告:

mix.js('resources/assets/js/app.js', 'public/js')
   .less('resources/assets/less/app.less', 'public/css');

優秀的,我們所有的部落格進行必要的依賴是準備好了,它是很小的情況下!
開啟我們的部落格檢視/佈局/ app.blade.php的主模板,我們給它的形式:

gist

除了標準功能laravel,然後有新的:
設定  -幫手,讓您從資源庫中顯示的值。
小工具  -自定義檢視和執行程式碼。
現在,讓我們來建立我們的小部件選單,以便我們可以從皮膚進行管理:
要做到這一點,發出以下命令:

php artisan make:widget MenuWidget

工匠將建立在widget /應用/ HTTP /小工具的空檔案。我們將只在配置檔案中的config / widget.php進行註冊

'widgets' => [
    'menu' => \App\Http\Widgets\MenuWidget::class,
],

改變它,他會收集所有的專案,並把他們顯示:

gist

然後,地圖本身看起來就像這樣:

gist

好吧,讓我們顯示記錄本身我們的部落格的,為此我們使用多平臺記錄:

php artisan make:manyBehavior Blog

在/應用/核心/行為/很多,blog.php的空檔案將被建立,讓我們來填充它:

gist

之後,平臺的描述可以在配置/內容進行登記

'types' => [
    App\Core\Behaviors\Many\Blog::class,
],

我們的使用者應給予在管理皮膚中編輯資料記錄的權利後,轉移到我們的許可權選項卡上的使用者:

儲存記錄部分後,將在主選單中。現在,我們可以填寫我們的部落格內容。

但是,我們需要的記錄顯示,這將建立一個控制器C含量:

php artisan make:controller BlogController

gist

在此之後改變我們部落格的路由:

$router->get('/','BlogController@index');

$router->get('/{blog}','BlogController@show')
    ->where('blog','^(?!dashboard).*$')
    ->name('blog.post');

要顯示的URL地址新增一個人才會懂得繫結路線的部落格,在RouteServiceProvider:

Route::bind('blog', function ($value) {
    return Post::where('slug', $value)
        ->type('blog')
        ->with(['attachment'])
        ->firstOrFail();
});

現在,我們需要建立一個地圖檢視中的目錄中的所有這些資料建立網頁,並main.blade.php post.blade.php目錄

gist1

gist2

在這裡,有一個新功能的getContent,它返回我們在寫作的控制皮膚已經表明的價值。

總之,我們已經建立了使用Laravel和蘭花一個簡單的部落格。原始碼可在githab。如有任何問題請發郵件或你考慮一下吧。

相關文章