OraRails

Oracle(9i,10g)+RubyOnRails(Ver1.2.1+Apache+mongrel)の設定メモ

Debian apache 設定

2007-03-30 20:42:22 | Debian
参考サイト1)日々の思考と実験
参考サイト2)おいぬまの覚書
参考サイト3)Directory Index とか
参考サイト4)Debian mongrel_cluster

けっこうはまった。ProxyPassが通らない!!こんなエラーが。

[warn] proxy: No protocol handler was valid for the URL /railapps/. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.


確認の手順
1) /sites-abailabe/mainsite の問題か? mod_proxy 関係の問題かの切り分け
  
  /sites-abailabe/mainsite に
   ProxyPass /railapps/ http://www.google.co.jp
と書く。

  -> 失敗

2) /mods-available/proxy.conf の問題か?

  デフォルトに戻す

3) mod_proxy モジュールが足りないのか?
  -> 正解

  /usr/sbin/a2enmod proxy_http
   Enabling proxy as a dependency
   This module is already enabled!
   Module proxy_http installed; run /etc/init.d/apache2 force-reload toenable.
  /usr/sbin/a2enmod proxy_html
   This module is already enabled!
/usr/sbin/a2enmod proxy
This module is already enabled!
    
   proxy_http が効いてなかったみたい。

  参考サイト Mailing list archives


URLに引数、パラメータの取得

2007-03-12 17:16:10 | 全般
http://www.xxx.jp?mode=abc&type=def&class=ghi みたいなURLに入っているパラメータはどうやって取得するのか?

@params[:mode] = abc
@params[:type] = def
@params[:class] = ghi

で、何もしなくても取得できるらしい。

Rails的には、 routes.rb に 設定を切ることを推奨してる。こんな感じ↓

map.connect '/diary/:year/:month/:day', :controller => "diary", :action=> "show"
# "/diary/2005/07/25" → @params = {"year"=>"2005", "month"=>"07, "day"=>"25", "controller"...}



ドロップダウンリストでAjaxの絞込み

2007-03-08 10:41:20 | ActionView
参考サイト1)イトウ アスカ blog - selectボックスとAjax
参考サイト2)RailsOnAjax

observe_field を使うらしい

サンプル) 
------ new.rhtml -----------------------------------------------------
select(:ROOMTYPE,:at1,%w{--- Sweet 個室 大部屋 タコベヤ})
observe_field(:ROOMTYPE_at1, {
:update => :roomnum,
:on => 'change',
:url => { :controller => '/rails1/rooms', :action => :roomnum },
:with => "'ROOMTYPE='+ escape(value)"})


----------------------------------------------------------------------

------ rooms_controller.rb -------------------------------------------
def roomnum
@rm = Room.find_by_sql("SELECT max(ROOMNUM) as heya FROM MROOM WHERE ROOMTYPE = '"+@params[:ROOMTYPE]+"' GROUP BY ROOMNUM order by ROOMNUM")
end
----------------------------------------------------------------------
------ roomnum.rhtml -------------------------------------------------
<select name="ROOMNUM" id="ROOMNUM_at1">
<% for rm in @rm %>
<option value='<%=rm.HEYA%>'><%=rm.HEYA%></option>
<% end %>
</select>

----------------------------------------------------------------------
この仕組みだと、最初のselectをしないと、選択ボックスが出ない。
とりあえず、このまま進もう

DBはUTF8なのにSHIFTJISになる

2007-03-07 10:44:47 | Xserver+apache
Oracle10gは、UTF8になってるのに、Rails+ODBCで帰ってきた結果はSHIFT-JISになってる。なんで?

確認1)本当にOracleはUTF8か?

SQL# select * from NLS_DATABASE_PARAMETERS where PARAMETER = 'NLS_NCHAR_CHARACTERSET';

PARAMETER VALUE
-------------------------- --------------------
NLS_NCHAR_CHARACTERSET UTF8

間違いなさそう

確認2)ODBCで、Shift-Jisになってるのではないか?

あった!!