2011-04-30 58 views
1

我試圖找到一個最佳實踐,允許用戶通過在提交帖子時在文本字段中將它們寫入到Rails中的路徑,就像使用Path模塊在Drupal(是的,我們正在移植Drupal站點到Rails)的Rails中的類似Drupal的路由系統

所以,我需要

  • 定義上的文章提交一個新的,名爲途徑(例如http://www.domain.com/a-day-in-annas-life
  • 改變現有路線上文章編輯,如果他們定義一個新的,做一個301重定向fr om舊路線到新路線

我該如何做到最好?

+0

結帳https://github.com/rsl/stringex – Thilo 2011-04-30 13:14:24

回答

0

好的,我找到了一種方法,但如果這是最好的做法,我不能說。

我使用自定義的限流是這樣的:

class CharitiesRestrictor 
    def self.matches?(request) 
     slug = request.path_parameters[:path] 
     !Charity.find_by_name(slug).nil? 
    end 
    end 

    constraints CharitiesRestrictor do 
    match '*path' => 'charities#show_by_slug', :constraints => CharitiesRestrictor.new 
    end 

當我創建這樣對我的每一個模型/控制器對,應該是能夠對固定鏈接響應塊,我可以讓他們都有一個有機會在永久鏈接上採取行動。但是,這也意味着他們都被串聯起來,這並不一定是理想的。