2012-04-30 16 views
12

यह काफी मामूली लगता है लेकिन मुझे इस समस्या का वैध उत्तर नहीं मिल रहा है।एक ही दृश्य में विभिन्न यूआरएल मानचित्र करें

मान लीजिए कि मेरे पास दो अलग-अलग लिंक हैं '/' और '/ home' और मैं चाहता हूं कि वे एक ही दृश्य को इंगित करें। (इसका मतलब है कि उपयोगकर्ता xyz.com या xyz.com/home खुलता है, वही पृष्ठ प्रदर्शित किया जाएगा)।

पिरामिड में मैं

config.add_route('home','/') 
config.add_route('home','home/') 

की कोशिश की लेकिन यह निम्न अपवाद

pyramid.exceptions.ConfigurationConflictError: Conflicting configuration actions 
    For: ('route', 'home') 

कैसे मैं वास्तव में इस को लागू करना चाहिए को जन्म देती है?

config.add_route('home','/') 
config.add_route('home1','home/') 

और फिर दोनों के लिए एक ही दृश्य को कॉन्फ़िगर:

config.add_view(yourview, route_name='home') 
config.add_view(yourview, route_name='home1') 

या, के मामले में

उत्तर

21

आप (वे आवेदन प्रति अद्वितीय होना चाहिए) अलग मार्ग नामों के तहत उन्हें जोड़ने की जरूरत @view_config सजावट का उपयोग करके, अपनी विधि को दोहराएं:

@view_config(route_name='home') 
@view_config(route_name='home1') 
def your_method(request): 
    ..... 
संबंधित मुद्दे