ZEIT Nowでサイトつくってはてなブログの独自ドメインをやめた

Now、デフォルトでSSLで無料で独自ドメイン使えるので良い。

zeit.co

Netlifyという選択肢もあったけど、ちょうどNext.jsを触っているところだったのでZEITのサービスを使うか、という流れ。

はてなブログの独自ドメインをやめるにあたって、既存記事へのリダイレクトとかをどうしようか考えていたのだけど、設定ファイルを一緒にデプロイすればリダイレクトもできるとのことで安心した。

ちなみに now.json に以下のような記述をすれば良い。

{
  "routes": [
    { "src": "/entry/(.*)", "status": 301, "headers": { "Location": "https://tomcky.hatenadiary.jp/entry/$1" } }
  ]
}

AレコードがNowを参照するようにしたかったけど、見つけきれなかった(できないのか?)のでネームサーバーを移管することにした。
メールアドレスなど他の用途で使ってなかったので、特に気にすることなく移管できたのは幸い。

【Laravel】外部キー制約エラーが出たと思ったらこんな間違いしてた

Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails

えー、なんで。。って思ってたらマイグレーションでこんなコードを書いてました。。

<?php
// ...
$table
    ->foreign('foo_id')->references('id')->on('foos')
    ->foreign('hoge_id')->references('id')->on('hoges')
;

お分かりいただけますでしょうか。これはアカンですね。
こちらが正しいコードになります。

<?php
// ...
$table->foreign('foo_id')->references('id')->on('foos');
$table->foreign('hoge_id')->references('id')->on('hoges');

このようなミスをすることはそうないと思いますが。お気をつけて。

あと、関係ないんですけど、 <?php 書かないとシンタックスハイライトあたらないのって、普通だっけ?

【jQuery】input要素のname属性値にブラケット[]が使われているとき

<input type="text" name="foo[]">

こんな感じの要素をjQueryでセレクタ指定したいとき、

$('input[name=foo[]]')

ではダメ。

ダブルクォーテーションで囲うか、

$('input[name="foo[]"]')

バックスラッシュを2つをブラケット [] の前に付ける。

$('input[name=foo\\[\\]]')