CakePHP3:テンプレートで必要なjavascriptをレイアウトで読み込んだjavascriptの後に読み込ませる

jQuery等のライブラリをレイアウトファイルで読み込ませ、その他のJavaScriptファイルはテンプレート側で必要に応じて読み込む方法をどうやったらよいか、 前から悩んでいたのですが、以下、動く方法が1つ見つかりました。

レイアウトファイルの一部

    <?php

        // 一番最初に読み込みたいjsファイル
        $globalJsFiles = [
            'URI/URI.min',                                           
            'js-cookie/js.cookie',                                      
            'jquery/jquery-3.2.0.min'
        ];
        echo $this->append('globalScripts', $this->Html->($globalJsFiles));
        echo $this->fetch('globalScripts');
        echo $this->fetch('nonGlobalScripts');
    ?>
  </body>
</html>

テンプレートファイル

<?php
    echo $this->append('nonGlobalScripts', $this->Html->script('helloworld'));
?>

jQuery:フォームを送信する前に中身を操作する

<form id='create_order'>
  <input name='firstname'>
</form>

というフォームをajaxでPOSTしたい、だけど、firstnameを差し替えたいとします:

function submitOrder() {
  var data = $("#create_order").serializeArray();

  data.forEach(function (item) {
    if(item.name === 'firstname') {
      item.value = 'thebaker';
    }
  });

  return $.ajax({
    url:      '/orders/add',
    type:     'POST',
    dataType: 'json',
    data:     $.param(data)
  })
}

Outlook:SSL/TLS/STARTTLSの謎

Outlook.comとOffice 365ブラウザ版のOutlookには、IMAPの通信経路の暗号化の選択肢として次の3つがあります:

SSLだと993番に接続できますが143番はNGです。 TLSだと143番に接続できますが993番はNGです。

おそらく、ここでいうSSLは「SSL/TLS」、そしてTLSは「STARTTLS」なのでしょう。

なお、SMTPについては選択肢すらありません。465番を利用せよ、ということでしょうか? 587でSTARTTLSをサポートしてくれると嬉しいのに。

なお、他の落とし穴として:

  • Office 365ブラウザ版のOutlookは、SMTPサーバを指定できない

というのもあります。

試乗:インプレッサG4 2.0i-S

先日カローラスポーツを試乗したので、比較対象としてインプレッサG4を試乗してきました。

内装

地味ですが頑張っています。ドアの内側のドアノブがちゃんとメッキになっている。 (新型クラウンのRS Advanceはプラにメタル調の塗装なんですよ)

室内

広いです。特に後席のレッグルーム。座面は短いのですがまあそれはほとんどの車がそうなので仕方ないでしょう。

視界

前が広くて見やすい!

エンジンとトランスミッション

街乗りなので正直なところよくわかりませんが、2リッターだからでしょうか。 十分なトルクがあるように思います。

乗り心地

18インチのタイヤを履いているにしてはよかったです。16インチのカローラスポーツと同等かな… ただ、新開発のプラットフォームの割には剛性のようなものは感じられませんでした。 かといってボディがフニャフニャというわけでもないです。

総合

お得だと思います、この車。

その他

次は、シビックかゴルフを試乗してきます。

MySQL/MariaDB:AUTO_INCREMENTが減る場合

MySQL8より過去のバージョン、および、MariaDB10.2.4より前のバージョンでは再起動の結果、AUTO_INCREMENTの値が減ることがあります。 再起動後、SELECT MAX(id) FROM テーブル名で取得した値を使ってAUTO_INCREMENTを設定しているようです。

試乗:カローラスポーツ(ガソリン車のGグレード)

メディアでのレビューが良いので気になってカローラ店に見に行ってきました。 この車、先代のオーリス時代はネッツとトヨペットでの扱いだったのに 今回からはカローラ店専売だそうです。

さて、内装ですが意外によかったです。新型クラウンの半額なのにまあまあ頑張っています。 余談ですが新型クラウン、RS Advanceという比較的高いグレードでもドアの内側のノブが メッキではなくてメタル調の塗装のようでした。カローラスポーツも塗装です。

テレスコはついているし、パーキングブレーキが電動なのもいいですね。 シートは分厚い感じでホールドが良さそう。リアはまずまず広いですがタンブルがきついので圧迫感があります。 リアは窓の狭さを除けばCH-Rのほうがいいと思います。

エンジンはオーリス時代のほうが力感があるように思いました。 オーリスはハイオク、カローラスポーツはレギュラーだからしょうがないのかもしれません。

トランスミッションのDirect CVTは期待していたのですがオーリスのCVTとそんなに違いがないような。 おそらくトヨタのことですからフィーリングよりも燃費を向上させたんでしょう。 日本仕様のカローラスポーツはDirect Shift CVTではなく、従来通りのSuper CVTらしいです。違いが無いわけだw

エンジンは静かです。ロードノイズはうるさいので気になる人はレグノに履き替えたほうがいいかもしれません。

乗り心地は悪くないのですが16インチのタイヤ(確かエコピアだったような)と新型のダンパーらしいのでもっと 心地よくてもいいかな、とは思いました。

次はゴルフ、インプレッサと試乗してみたいと思います。