나는 내 플라스크 응용 프로그램에서 여러 가지 견해를 가지고 있습니다. 각보기에는 고유 한 하위보기가 있으며, 지속적으로 각 하위보기에는 작은 템플리트가 있습니다. 시각적 데모 및 URL 구조는 다음과 같습니다.플라스크의 동적 render_template()
|-settings ___________ [@app.route(/manage)]
|--menu_settings _____ [@app.route(/manage?current=menu_settings)]
|--main_settings _____ [@app.route(/manage?current=main_settings)]
|--additional_settings [@app.route(/manage?current=additional_settings)]
|-online_store [@app.route(/online_store)]
|--delivery __ [@app.route(/online_store?current=delivery)]
|--payment ___ [@app.route(/online_store?current=payment)]
|--store _____ [@app.route(/online_store?current=store)]
if 또는 if 조건을 사용하면됩니다. 예 :
@admin.route('/manage', methods = ['GET', 'POST'])
@login_required
def manage(current = ''):
current = request.args.get('current')
if current == 'menu_settings':
return render_template('admin/manage/site_figuration.html',
title = 'Site figuration',
current = current)
elif current == 'internet_market':
return render_template('admin/manage/internet_market.html',
title = 'Internet market',
current = current)
else:
return '404 - Template not found'
제 질문은 제가 올바르게하고있는 것입니까? 또는이 문제를 극복하기위한 또 다른 쉬운 방법이 있습니까? 이 방법을 사용하는 것이 합리적입니까, 아니면 JQuery load() 메서드를 사용해야합니까?
Mr. Andrejs. 다른 사람들에 대해 잘 모릅니다. 그러나 저는 주로 당신의 엘프를 좋아합니다. 앞서 언급 한 것처럼 views.py를 조금 깨끗하게 유지하고 싶습니다.50 개 이상의 뷰가 있기 때문에 furete 편집을하기가 정말 어려울 것입니다. – Max
당신의 views.py를 여러 파일로 분리 할 수 있습니다. 내가 일반적으로 사용하는 방법은 views/__ init__.py, views/admin.py, views/general.py, views/api.py 등을 갖는 것이다. views/__ init__.py는 다른 파일들을 임포트한다. 이것은 당신을 위해 물건을 깨끗하게 유지하는 데 도움이됩니까? – Daniel