Laravel5.3を使ってみての覚書です
(思いついたら加筆していくかも)
Windows + Vagrant(CentOS7.2)でVagrantフォルダで開発したためnpm install でエラーが出る
シンボリックリンクが貼れないためですので、Vagrantフォルダではない適当なフォルダでpackage.jsonを持ってきてnpm installをした後./node_moduleをVagrantフォルダにコピーして解決
※gulpコマンドは./node_modules/gulp/bin/gulp.jsとなる
migrationで毎回エラーが出る
テーブル定義変更時に毎回テーブル存在するとかというエラーが出る・・・SQLiteのせい???面倒だけど毎回テーブル消して対応
SQLiteでのDate型の条件判定&ソートがおかしい
文字列でソートしてるからっぽい・・・諦めて年月日を分けて数値型に・・・・DBのせいだからPHPFrameworkで吸収してくれない・・・よね
サーバーの起動
php artisan serve --host 0.0.0.0
でLaravelフレームワーク用のサーバーが起動するので
http://VagrantのIPアドレス:8000/
でアクセスできる(--host 0.0.0.0を忘れるとローカルからしかアクセスできない)
画面の作り方
Viewに関して
blade使用してやるので./views/に作る(.blade.php)
中身は
@extends('layouts.app')
@section('content')
<sampletemplate>
</sampletemplate>
@endsection
のようにする ※sampletemplateはVueでのカスタムテンプレート名
Vueファイルに関して
./resources/assets/js/components/
にファイルを置いていく(Example.vueがあるのでお手本にしましょう)
リアクティブコンポーネント(Vueの利用)はVueファイル内で記述していく
./resources/assets/js/
にapp.jsがあるので
Vue.component('sampletemplate', require('./components/Vueファイル名'));
を追加すればOK
gulp
gulpを使用してjsおよびcssファイルを纏める必要があるので実行することでページに反映される
わからなかったこと
・Ajaxでデータ取得するところはapiのrouteにしたかったけど認証エラーが出てしまうので結局はwebのrouteでやってしまってる
・PHPの値をVueに渡す手法(今回はテンプレートのprop( http://jp.vuejs.org/api/#props )を利用して回避したけどうまいやり方があるかもしれない)
完成したもの
エクセルで書いていくのが面倒なのでLaravel触ってみるのにちょうどいいぐらいの規模っぽい気がしたから作った
作ってみての感想
・何故かLaravel+Vueでの作り方みたいなのの資料が少ないので色々手間取った
・Vueを初めて触ったので多少お作法を理解するのに手間取った
・View部分はWebデザインできたらもっと見た目良くできたのにと思う
・慣れたらこんなの一日かければできるんだろうなぁ・・・(一週間かかったorz