2024-06-16
2024-06-16
Rails
ArticlesController でこのように Basic 認証を入れた
例えば記事の新規作成ページにアクセスしようとすると Basic 認証を求められる
http_basic_authenticate_with name: "dhh", password: "secret", except: [:index, :show]
一覧にある New Article というボタンにホバーしただけで Basic 認証を求められてしまう
Turbo v8 からプリフェッチがデフォルトで有効になっているため
https://turbo.hotwired.dev/handbook/drive#prefetching-links-on-hover
とりあえずこのようにしてリンクの部分だけ無効にした
<%= link_to "New Article", new_article_path, class: "inline-block bg-blue-600 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded", data: { turbo_prefetch: false }
Rails 7.1 で enum の構文が変わる
https://techracho.bpsinc.jp/hachi8833/2021_06_17/105107
class Post < ActiveRecord::Base
enum :status, [ :draft, :published, :archived ], prefix: true, scopes: false
enum :category, [ :free, :premium ], suffix: true, default: :free
end
ハッシュ構文でも有効
class Post < ActiveRecord::Base
enum :status, { draft: 0, published: 1, archived: 2 }, prefix: true, scopes: false
enum :category, { free: 0, premium: 1 }, suffix: true, default: :free
end
ちな _prefix
などのオプションは _
をつけなくて良くなる。Rails 7.2.0beta2 ではすでに廃止されており、それに気づかなくてハマった…