2012-02-04 28 views
0

我可以通過一個單一的,更通用的,路由的路由服務模塊中的所有請求的函數的名稱替代2條網址路線Django的URL路由 - 包括URL部分派遣

urlpatterns = patterns('',   
    url(r'service/geticons', 'core.service.geticons'), 
    url(r'service/getnearby', 'core.service.getnearby'), 

最後的網址段?

想着像

url(r'service/#f', 'core.service.#f') 

或者我必須在Django做這樣的派遣服務模塊中?

回答

1

當然,您可以收集路徑並將其指向返回該函數的視圖。

url(r'service/(?P<function>\w+)/$', 'core.service.function_router') 


def function_router(request, function): 
    return globals()[function](request) 

但是,它可能更好的是明確設置網址。

+0

thx,我很確定沒有更好的方法。也用於顯示調度程序功能。在asp.net mvc中,我相信pylon這樣的通用路線很容易,並且在實踐中證明是有用的。爲django我agee與您的意見,並將爲每個服務功能單獨的網址路線。反正沒有太多。 thx再次! – citykid 2012-02-04 12:22:08

+0

嘿托馬斯,是的,我相信明確是最好的方式去,直到有一個真正的瓶頸或該系統的問題 – 2012-02-04 12:26:43