traindoggo / nextjs-docker-blog

simplest blog ever
0 stars 0 forks source link

Blog: slug の扱い #5

Open traindoggo opened 3 months ago

traindoggo commented 3 months ago

slug の扱いについて

(id を int は明らかにバッドプラクティスなので cuid などに置き換えるとして)

いろんなslug を見てみる

とか様々流儀がある どれも一長一短があるんだろうと思う

そもそもタイトルがidだとまずい理由がわかってない(調べる)

そもそも

大概のブログがslug を使っている

URL を見ただけで内容がだいたい分かるのが良いURLなのはそりゃそう

/yyyy/mm/dd/slug もちょいちょいある

重複がとても発生しづらいのでこれはいい感じもする(同じ日に全く同じタイトルのブログを書くときのみ)

が components が結構 nest されるので実装的に微妙?

others

Blog以外のサービスだと slug はあんまり(ほとんど)使われてない

slug自体がブログ独自の文化っぽい感じもする

対応

ブログはほとんどタイトルをそのまま slug に利用している

たまに違うやつあるけど

というわけで title をそのまま slug にすることにする

server actions 側で title_to_slug() して適用することにする

全く同じtitle でなければ重複しないのでこれでいいか?

traindoggo commented 3 months ago

slug は DBに入れておく(当たり前)忘れてた create Blog, edit Blog するときに title -> slug を適当に変換する whitespace を入れると正規化されてグチャッとなるので - で replace する