windows でattachment_fuを使用する

現在もっぱら、Windows環境で勉強しております。
なお、今の開発環境は one-click-ruby の 1.8.6です。


今回 attachment_fu プラグインをWindowsにインストールした場合の事を書いておきたいと思います。

【attachment_fu プラグインインストール】
(1)前もってwindowsに以下をインストール
TortoiseGit-0.7.2.0-32bit.msi(日本語化:tortoisegit_0.7.2.0_lang_jp.zip)
Git-1.6.3.2-preview20090608.exe
RMagick-2.10.0-ImageMagick-6.5.3-10-Q8.zip

※RMagickは、解凍して、以下の通りインストール
(A)ImageMagick-6.5.3-10-Q8-windows-dll.exeの実行
(B)gem install rmagick-2.10.0-x86-mswin32.gem --local でインストール


(2)その後、以下のコマンドを実行してインストール
ruby script/plugin install git://github.com/technoweenie/attachment_fu.git

これで、インストールは完了


【動作させるとなぜかsizeが正しく取得できない】
動かして判明した事なのですが、なぜかたまに、
Size is not included in the list というエラーが発生するのです。
ファイルサイズが正しく取得できたり、できなかったりの原因が
なぜなのか、わかりませんでした。
has_attachmentに :min_size => 0.kilobytesを付けたとしても、
:max_sizeの判定がおそらくうまくいかない事になると思い、
何が原因かを約3日ほど、悩んでおりましたが、
最終的にネットを調べてみると、ありました。。

これ!。
Fixing "Size is not included in the list" error message

----------------------------
# Returns the size of the temporary file. As a side effect, the IO
# buffer is flushed before determining the size.
def size
if @tmpfile
#-------------------------------------
@tmpfile.fsync # これを追加
#-------------------------------------
@tmpfile.flush
@tmpfile.stat.size
else
0
end
end

----------------------------
Ruby\lib\ruby\1.8\tempfile.rb ファイル内の size処理の所に fsyncを挿入する事で正しくサイズが取得できるようになりました。これでサイズのチェックはOKとなりました。
(この修正は、windowsの環境のみ)

Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

興味

項目(サイトへ)概要
AIと仕事の未来生成AIによる働き方の変化と、これから求められる仕事・スキル・キャリアを探るレポートです。
SVGタグ解説SVGの基本的なタグについて解説します。
SVGの探求SVG:インタラクティビティとアニメーションの探求
Mermaid.js 各種ダイアグラムのノードと矢印の図形Mermaid.jsは、コードベースでフローチャートやUMLなどの図を描画できる軽量なJavaScriptライブラリです。
Mermaid.js 記述事例Mermaid.jsを使用してフローチャート、シーケンス図、クラス図、ステート図、マインドマップ、要件定義を記述した構文例を載せています。
macromedia Flash 歴史探訪Webに命を吹き込んだFlash──インタラクティブ時代の幕開けを振り返ります。
RailsがWeb開発にもたらした衝撃と改革Web開発の革命、多くのフレームワーク誕生の火付け役となったRuby on Railsについて。
IT開発工数見積もり手法 選定支援ツール要件定義は工数見積の基盤であり、適切な算出が成功の鍵となります。
梅から桜へ:日本の花文化変遷インタラクティブガイド梅から桜へと観賞対象が移り変わった歴史的経緯と文化的背景を、インタラクティブに探求します。
もち麦と雑穀米 完全ガイドもち麦と雑穀米のインタラクティブガイドです。

no+e

記事内容
SVG描画ツールを作ってみたSVG描画ツールをGeminiと共に作るきっかけとなった話
GeminiとMermaid.jsの組み合わせGeminiで、ソースを解析してもらいmermaid.jsが認識してくれるタグに変換してもらう話
Gemini共同製作からのGem活用Geminiと私が実際に行っている共同製作方法(バイブコーディング)の方法を解説した話
SVG描画ツールをGemini CLIで作成するGemini CLIでSVG描画ツールを作成できるのか?を確認した話
KIROを使ってみました。KIROというAIエージェントが公開されてGemini CLI が解決できない問題を解決できるのではと使ってみた話
KIROとGeminiでSVG描画ツールを作成本当はGEMINI CLIを1番に使いたいのですが使えないのです。その為現在は、1.KIRO 2.GEMINI(WEB) 3.GEMINI CLI を使ってます
AIが「ごめんなさい」と答えた日。私は気分転換をすることにしたSVG描画ツールのバグ修正が思うように進まず、開発がしばらく停滞した中、生成AIにも見放されてしまい気分転換をした話