[前][次][番号順一覧][スレッド一覧]

rails:3372

From: naopontan <naopontan@g...>
Date: Fri, 29 Jan 2010 10:29:20 +0900
Subject: [rails:3372] Re: 複数のレコードを更新する画面でのルート定義

naopontanです。

返答が遅れて申し訳ございません。

英語は苦手ですが、少しづつ分かってきました。
結果、以下の様なルーティングを記述する事で目的は達成できました。

  # 表示
  map.schedules 'schedules/:yyyymm',
                :controller => 'schedules',
                :action     => 'index',
                :yyyymm     => /\d{6}/,
                :conditions => { :method => :get }

  # 編集
  map.edit_schedule 'schedules/:yyyymm/edit',
                    :controller => 'schedules',
                    :action     => 'edit',
                    :yyyymm     => /\d{6}/,
                    :conditions => { :method => :get }

  # 更新。更新後は編集にリダイレクト
  map.connect 'schedules/:yyyymm',
              :controller => 'schedules',
              :action     => 'update',
              :yyyymm     => /\d{6}/,
              :conditions => { :method => :put }

ここまでで理解は深まったのですが、これだと年月が省略できない事に気付きました。
年月が省略された場合は「当月」としたい欲が出てきたので、もう少し勉強してみます。
ありがとうございました。

2010年1月21日17:02 okkez <okkez000@g...>:
> okkez です。
>
> 2010年1月21日16:41 naopontan <naopontan@g...>:
>> ルーティング定義や REST(?)がよく理解できていないので教えて欲しいです。
>>
>> 例えば、日付毎に管理される schedules テーブルがあったとします。
>> 普通だと routes.rb にて
>>  map.resources :schedules
>> で1件づつ管理しますよね。
>> これを1件づつではなく、1ヵ月単位で画面表示したいのです。
>>
>> ◆画面イメージ
>>  +-- 2010年1月 ---------+
>>  | ←前月        次月→ |
>>  |----------------------|
>>  | 2010/1/1  [散歩    ] |
>>  | 2010/1/2  [        ] |
>>  | ・                   |
>>  | <保存>               |
>>  +----------------------+
>>
>> これを実現するにあたり、疑問が幾つか出てきました。
>>
>> 疑問1:
>> URLは http://localhost:3000/schedules/201001 と出来ればいいな。
>> けど routes.rb にどう書くんだろう?
>> また、この場合は複数形じゃない方がいいんだろうか?
>> (私のスキルでは http://localhost:3000/schedules?date=201001 が限界)
>
> とりあえず
> http://railsapi.com/doc/rails-v2.3.5/classes/ActionController/Routing.html
> を読んでみてはいかがでしょうか。
>
>>
>> 疑問2:
>> コントローラーに実装するアクションは2つで良いと思うのだが、
>> 名前は何がいいんだろうか?
>>  - 画面表示するアクション⇒ index or show or edit ?
>>  - 更新するアクション⇒ これは update でいいのかな。
>>
>
> 他のアプリケーションのコードを読んでみてはいかがでしょうか。
> http://github.com/fdv/typo とか。
>
>
>
> --
> okkez
> okkez000@g...
>
> --
> ML: rails@r...
> 使い方: http://QuickML.com/
>

--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

      3367 2010-01-21 08:41 [naopontan@g...      ] 複数のレコードを更新する画面でのルート定義
      3368 2010-01-21 09:02 ┗[okkez000@g...       ]                                       
->    3372 2010-01-29 02:29  ┗[naopontan@g...      ]