タグ機能もjsbundlingの復旧に伴い正常に動作するようになった

August 29 08:08, 2025 Posted by tomo

いやぁ、やっと直った。なんせTURBOどころかJavaScriptも読み込めていないとなると明日はないからな。
これで次のタスクに移れるので、うれしい。

もっと読む

Comments: Disabled

やっとローカルのCSSコンパイル機能が直ってPagyのスタイルも当たった

August 28 07:08, 2025 Posted by tomo

そう、Pagy以前からダメだったのです。とりあえずやったこと。

app/javascript/stylesheets/pagy.tailwind.cssを追加。
app/javascript/stylesheets/application.tailwind.cssに、以下を追加。
@import "./pagy.tailwind.css";

app/postcss.config.jsを追加し、以下を追記。
module.exports = {
plugins: {
"@tailwindcss/postcss": {},
autoprefixer: {},
},
};

Dockerfileで、yarnのインストールに失敗していたのを直した。
docker-compose.ymlでnode_modulesをvolumesに設定。
続きはあとで。

もっと読む

Comments: Disabled

TailwindcssをPagyに当てようとして更にハマった話

August 28 00:08, 2025 Posted by tomo

tailwindcss-rails (2.7.9-x86_64-linux)
pagy-9.4.0

参考URL
https://ddnexus.github.io/pagy/docs/api/stylesheets/

ここを参考にしてローカルに適用した。しかし、スタイルが当たらない。試しにRender(このサイトのホスト先)にデプロイしたところ、なんとスタイル当たっているではないか?
おそらく、ローカルのcss-bundlingとかがうまく動いていないっぽい。次は、そこに焦点を当てて調べてみる。とりあえず本番はうまくいった(実務では御法度)。

もっと読む

Comments: Disabled

RailsのページネーションPagyを実装しようとしてドはまり

August 27 13:08, 2025 Posted by tomo

人気のGemのひとつであるPagy。今までこのサイトの単語帳アプリでも実績があるので、1時間もやれば楽勝と思っていた。
昼過ぎに着手して、いま夜の9時過ぎ。モデル、コントローラ、ビュー、そして設定も見まくった。デバッグコードも貼ってログに出してみた。しかしうまくいかない。
症状は、投稿が8つあるが、3つを1ページとして区切ろうとしても分かれてくれないで、ずっと1ページとして認識されるという感じ。何かが邪魔をしている。特段にハイスペックなことはしていないはずなんだけど、うまく動いてくれない。Clineに調べてもらっていたら、途中でクレジットが尽きてしまった。また、明日チャレンジするか。

今更ながら思うが、この仕事に簡単なことなんて何一つないんだよな。だから、私はほかのエンジニアに対していつも敬意を表している。
私なんか、おこがましくて自分からエンジニアなんて名乗れないな。ロースキルじじいで本当に申し訳ない。

追記)これを書いてすっきりしたあとに、ネットを探したら、以下の方法で解決した。
https://qiita.com/P-man_Brown/items/f0502eb9b74e9968638a

posts_controller.rb#index

@pagy, @posts = pagy(posts_scope, limit: 3) ←ここが"items:"になっていたのが間違いだった。チキショー!!!このあとデプロイする(笑)

もっと読む

Comments: Disabled

OCamlで時間を判定するロジックの課題をやってみた

August 25 13:08, 2025 Posted by tomo

課題の出典は、浅井健一先生の「プログラミングの基礎」サイエンス社より。
わりと簡潔に書けたと思うのですが、いかがでしょうか?変数の位置をあまり移動させたくないようだ(自然とこうなる)。
ブーリアンで判定させるのはけっこう好きです。

追記:
模範解答は以下のとおり。難しく考えすぎていた。

(* 目的:時間を受け取ったら午前か午後かを返す *)
(* jikan : int -> string *)
let jikan ji =
if ji < 12 then "午前" else "午後"

(* テスト *)
let test1 = jikan 0 = "午前"
let test2 = jikan 3 = "午前"
let test3 = jikan 12 = "午後"
let test4 = jikan 15 = "午後"
let test5 = jikan 21 = "午後"

もっと読む

Comments: Disabled