私は決して Ruby 開発者ではありませんが、自分のローカルホストで Ruby フレームワークの HAML をコーディングしています。
もともと vidgirlBox2.flv ファイルというファイルを配置して HAML 内で呼び出していましたが、そのファイルを vidGirl_home.swf という swf に変換しました。
このswfは機能しました。
元の .fla に簡単な変更を加え、 vidGirl_home.swf を上書きするまで。
二度と機能しませんでした。
swfObject、控えめな Flash オブジェクト、最低限の swf 埋め込みなど、すべてを試しました。
結局のところ、ローカルサーバーを実行しているときに、ターミナルに次のメッセージが表示されます。
ActionController::RoutingError (No route matches "/Users/daniellevine/Desktop/vidgirlBox2.flv" with {:method=>:get}):
Rendering rescues/layout (not_found)
ご覧のとおり、古いファイルを探しています。私は自分のhamlでこのファイルを呼び出していません。この flv が自分自身をルビーにどのように書き込んだかについて、私は混乱しています (これは少なくとも私が想定していることです)。
これは私の回避策の試みでしたが、このコードは Rails コンパイラ エラーを生成するようです。これは単純な命名規則のエラーである可能性があります。どこかに引用符がありませんか?
私の新しい埋め込みコード:
- if Rails.env.development?
= javascript_include_tag "swfobject"
- else
%script{:src => "http://ajax.googleapis.com/ajax/libs/swfobject/2.1/swfobject.js"}
- id ||= "flash"
- filename ||= "/images/vidGirl/vidGirl_home.swf"
- width ||= 440
- height ||= 247
- background ||= "#ffffff"
- version ||= 9
- base ||= '{base: "."}'
%div{ :id => id }
%strong You need to upgrade your Flash Player
= javascript_tag "swfobject.embedSWF('/images/vidGirl/vidGirl_home.swf', 'vidGirl_home', '440', '247', '9.0.0', '/javascripts/swfobject/expressInstall.swf', {}, '/public/', {});"
何が起こったのか知っている人はいますか?またはさらに良いことに、これを修正する方法は?
ありがとうございました!!