2021-06-01から1ヶ月間の記事一覧

punditを用いた権限管理

はてなのようなブログサイトだと、 「サイト運営」「ブログ管理者」「寄稿者」「一般ユーザー」といったような構造で権限が別れていると思う。 これらの「権限」によって表示出来るページを制限する仕組みを「認可(Authorization)」と言い この「認可」の仕…

layoutのyieldが何をしているのかという話

共通レイアウトファイルからyieldするときの挙動を検証してみました。 これが分かったところで、特に何か応用できるわけでもないと思いますが ブラックボックスの気持ち悪さを少し解消できました。 rails version : 5.2.4.5

rakeタスクをRSpecでテストする

前回の記事で実装したrakeタスクをRSpecでテストしました。 以下のQiita記事を参考にコードを書きました。 qiita.com 記事「とってもシンプルでわかりやすいでしょう?」 ぼく「わからん」 知識不足で何をしているか分からなかったので、調べた結果を残して…

Railsで定期処理を回す(rakeタスク, cron)

ブログアプリでは、記事の状態を「下書き」「公開待ち」「公開」などで分けて管理していることが多いと思います。 今回はこの「公開待ち」を指定時間になったら「公開」する、いわゆる予約投稿の処理についてまとめます。

gretelを使ったパンくずリストの作成手順

gem gretelを用いてパンくずリストを作成します 例として、記事編集画面(article/:id/edit)にアクセスした際に Home > 記事 > 記事編集 というパンくずリストが表示される様にします。

テンプレートエンジンをerbからslimへ移行する

Ruby on Railsのデフォルトのテンプレートエンジンは「ERB(Embedded Ruby)」です。 Railsで使えるテンプレートエンジンは他にもあり、「slim」ではHTMLを簡潔に記述することができ、もちろんRubyの埋め込みもできます。 erbからslimへ移行する手順と、slim記…