Pages

2008年2月29日金曜日

[Rails]レイアウトのapplication.html.erbで納得。

なるほど、こちらページを読んで納得しました。
アプリケーションがレイアウトを読み込む優先順位に原因があったみたいです。

app/views/layouts/application.html.erb

app/views/layouts/(コントローラー名).html.erb
があった場合、順番は

(コントローラー名).html.erb→application.html.erb
の順番でロードされるみたいです。

(コントローラー名).html.erbが無かった場合はapplication.html.erbが読み込まれるみたいです。
試しに(コントローラー名).html.erbを削除したら無事反映されました。

[Ruby]RubyでCGIが動きました!

結局、会社にいる神様(人間)にメールを送って尋ねてみたところ、サンプルファイルを作ってくれました。
そのファイルと自分が作ったファイルを比較して、すぐに動かない理由が理解できました。

#!/usr/bin/ruby
print "content-type: text/html\n\n"
print "Hello!World!"

神様(Perl語を話す)はたぶん呆れていたと思います。

#!/usr/bin/ruby ←パスの間違い。自分のものは/usr/local/bin/rubyになっていました。
print "content-type: text/html\n\n" ←入れないと動かないらしい。基本的なことみたいです。

少し調べれば分かったのでしょうが、やっぱり神様(まだ若い)に聞いてよかったです。

まさか、rubyのhelloworldでつまづくとは思いませんでした。。。

2008年2月28日木曜日

[Rails]application.html.erbが効いてない

application.html.erb

を追加して

app/wiews/layouts/

に放り込んで、全体のレイアウトを作っておくことにしました

が、

全く表示に変化がありません。どうやら上手くapplication.html.erbを読み込んで
いない気がします。これが出来ればもっと便利になるんだと思うんですが。。。

[Ruby]CGIで動かない

BlueQuautzでRubyをCGIで動かそうと思って、
RubyCGI.orgのとおりに設置しました。

hello.cgi
#!/usr/local/bin/ruby
print "Hello!World!"

FFFTPでアップロードして、アクセスしたら

CGIWrap encountered an error while attempting to execute this script:
Error Message: No such file or directory
Error Number: 2
っていうエラーがでました。なんだか分かんないですが、Rubyへのパスが
間違っているか、.htacsseceっぽいので、明日神様(人間)に聞いて見ます。

2008年2月27日水曜日

[JS]FancyZoomで画像が表示されました。

アイコンが上手く表示されない件ですが、どうやらアイコンまでのパスが間違っていました。
で、もう一度よく考えたところFancyZoom.jsに下記のような記述を発見!

var zoomImagesURI = '/images-global/zoom/'; // Location of the zoom and shadow images

ここで、アイコンまでのパスを再設定して無事動作確認できました。

見た目もCoolで使い勝手もLiteBox2.0よりいいような感じがします。

2008年2月26日火曜日

[JS]FancyZoomで画像が表示されません。

ちょっとした画像を表示するのに丁度いいJavascriptのFancyZoom
デモを見る限りなかなかカッコいいです。

早速設置してみると、これまたスバらしいです。

が、

本来あるべき閉じるボタンやフレームが全く表示されません。
リンク切れになってしまってます。

うーん、もう少し頭をつかわないとダメっぽいですね。。。

[Rails]発見、render => :partialは2.0でこうなったの?

前回の件を更にググッてたら、同じような事で悩んでいらっしゃる方を発見。
RAILS PRESSさんにて解説されていました。

これでとりあえず少し前に進みます。助かりました!
それにしても、なんで2.0からは部分テンプレートが生成されないんでしょうか?

なにか深い意味があるように思えてくるから不思議です。

[Rail]2.0で render :partial => "hoge" が使えない。

rails1.2で使えてた入力フォームでrender(:partial => "hoge")の部分テンプレートが上手く使えないです。google先生でもよく分かりませんでした。

更によくよく考えたらscaffoldした際のviews以下にはなんと_form.html.erbという部分テンプレートさえ出来ていません。何ででしょ??

rails2.0になってから色々変更があったみたいなんで、その辺との絡みでしょうか?それとも、もう部分テンプレートを使うのは推奨されてないのでしょうか?

2008年2月25日月曜日

[Rails]なんとなくモデルに追加しました。

何処に追加しようか迷っていた部分ですが、結局モデルに記述して各コントローラーから呼び出すようにしました。

product.rbに

def self.select_product
  find(:all).map{|u| [u.name, u.id] }
end

を追加して、

mp_receipt_controller.rbの各メソッドの中で

def new
@girls = MpProduct.select_product
end

のように呼び出すようにしてみました。

こうしておけば、後々便利なんじゃないかと思いまして。。。
はっきりした理由は無いんですけどね。。。

2008年2月23日土曜日

[Flash]外部テキストの読み込み

同一階層のテキストファイルをムービーのルートより一つ下にあるムービークリップ内のUIコンポーネントのtextプロパティに設定するのに、1日かかりました。
Google先生で検索したところ、ちょうどいいコードが見つかったのでとりあえずコピペしてみたッス。

var mesg:LoadVars = new LoadVars;
mesg.onLoad = function() {
_root.mc_text.textarea.text = mesg.comment;
};

mesg.load("comment.txt");

次は外部.swfの読み込みをやってみるッス。出来るか不明ッス。

[Rails]設置場所検討中。

@products = MpProduct.find(:all).map{|u| [u.name, u.id] }
の部分を何処に追加するのか検討してます。

モデルなのか、コントローラーなのか。。。

[Rails]設置場所検討中。

@products = MpProduct.find(:all).map{|u| [u.name, u.id] }
の部分を何処に追加するのか検討してます。

モデルなのか、コントローラーなのか。。。
はたまた更に斬新な部分なのか?

2008年2月22日金曜日

[Rails]selectで別テーブル(完結)

正解はこちらでした。

<%= 
@products = MpProduct.find(:all).map{|u| [u.name, u.id] }
select :mp_receipt, :mp_product_id, @products
%>

更に、データが保存されない件に関しては、モデルに足したbelongs_toとhas_manyの部分でした。

[Rails]selectで別テーブル。

外見上うまく行ったけど、値がテーブルに入らない…。


<%=
@products = MpProduct.find(:all).map{|u| [u.name, u.id] }
select(:mp_receipt, :id, @products)
%>

2008年2月21日木曜日

[Rails]とりあえず、家計簿を作ってみる。

前回のプログラムはボツになってしまったので、今度は個人用に家計簿を作成開始。
いつも通りscaffoldしてみました。いまのところいい感じ。

早速ですが、前回つまづいた別テーブルからセレクトボックスを作る方法を
模索してみます。

開発終了。

セレクトボックスの作り方が分からず、開発を泣く泣く断念。次の機会があればまた頑張ります。

[Rails]select_tagで他のテーブルデータを参照したい。

select_tagでセレクトボックスを作って、テーブルのデータを選択させたいけど、うまくいかない。簡単に出来ると思うので、google先生に質問してみます。

2008年2月20日水曜日

[MySQL]外部キーつくれない!

MySQL Administratorで外部キーを設定しようとしたらerror 1216でエラーが出た。
数時間考えたけど分からず、会社でbokutin様に状況報告。

そしたら「参照先にデータが入ってるからですYO」とのお言葉を頂いたので、
レコードを全て削除してから再度外部キーを設定したらスムーズに
設定できました。

test

test