2018-10-01から1ヶ月間の記事一覧

CakePHP3:containとmatchingとinnerJoinWithの違い

メソッド 関連するデータを取得するか? 関連するデータに対して条件を設定し、元のテーブルを絞り込めるか? contain ○ ☓ matching ○ ○ innerJoinWith ☓ ○ 注意事項:containとmatchingは排他利用ではない

CakePHP3:bakeの落とし穴

とても便利なbakeですが、hasOneのリレーションを設定してくれないという特徴があります。 テーブルの例 例えば、次のようなテーブルがあるとします: usersテーブル user_profilesテーブル bakeした結果 Users hasMany UserProfilesというモデルが生成され…

CakePHP3:アソシエーションされているデータをsaveの前に変更する

リクエストデータを変更する場合 $data = $this->request->getData(); $data['order_data']['name'] = "新しい名前"; $order = $this->Orders->patchEntity($order, $data); エンティティのプロパティを変更する場合 $order->order_data->name = "新しい名前…

CakePHP3:コントローラで発行されたクエリをログする

debugkitを入れていればSQLは確認できますが、リダイレクト等が入っていて確認できない場合があります。 その対策です。 bootstrap.phpの変更 bootstrap.phpにこれを追加します: Log::config('queries', [ 'className' => 'File', 'path' => LOGS, 'file' =…

.sshディレクトリを作る

install -d -m 700 ~/.ssh (umask 077; touch ~/.ssh/authorized_keys) これで正しいパーミッションで作成できます。

Git:ブランチを作ってそこに移動する

git

git checkout -b 新しいブランチ名

Git:ブランチを削除する

git

ローカルの場合 ローカルブランチ一覧を表示 git branch マージ済みのローカルブランチを削除 git branch -d ブランチ名 マージ済みか否かを問わないで、ローカルブランチを削除 git branch -D ブランチ名 リモートの場合 リモートブランチ一覧を表示 git br…

Vue:Invalid Host Header

vue-cliを使ってこちらのチャットプログラムを作ってみたのですが、ローカルホスト外からアクセスするとInvalid Host Headerというエラーがでる。対処方法ですが、ルートディレクトリに以下の内容のvue.config.jsを作ると解消します: module.exports = { de…

Vue.js:フォーカスの当たっている要素のIDを取得する

こんな感じでいけます: created: function() { // ブラウザ以外で実行の場合、documentが無いと怒られるための確認 if(typeof window !== 'undefined') { // フォーカスが変わったらfocusChanged関数を呼ぶ document.addEventListener('focusin', this.focu…

Vue.js:配列の中のオブジェクトの値をリアクティブに変更

こんな感じにVue.setを用います: <div id='app'> <ul> <li v-for="artist in artists">{{artists.firstname}} {{artists.lastname}} {{artists.age}}</li> </ul> <form> <input type="button" value="年齢を5際、若くする" v-on:click="reduceAge"/> </form> </div> var app = new Vue({ el: '#app', data: { artists: [ { lastname: 'セザンヌ', fi…