簡體   English   中英

Django自定義應用程序模板:如何使用應用程序名稱創建目錄?

[英]Django custom app template: How to create directory with app name?

在調用startapp時運行的標准Django應用程序模板會創建以下文件和目錄:

<app_name>
 |-- migrations
 |    |
 |    +-- __init__.py
 |
 |-- __init__.py
 |-- admin.py
 |-- apps.py
 |-- models.py
 |-- test.py
 |-- views.py

我想創建一個自定義模板,它將生成以下應用程序結構:

<app_name>
 |-- migrations
 |    |
 |    +-- __init__.py
 |
 |-- static
 |    |
 |    |-- <app_name>
 |          |
 |          |-- css
 |          |-- img
 |          |-- js 
 |
 |-- templates
 |    |
 |    |-- <app_name>
 |          |
 |          |-- index.html
 |
 |-- __init__.py
 |-- admin.py
 |-- apps.py
 |-- models.py
 |-- test.py
 |-- views.py

我缺少的技巧是如何設置模板,以便使用應用程序名稱命名某些目錄。 這對模板文件中的參數很容易,但我不確定是否有辦法在statictemplate下創建目錄。

去看看startapp源代碼尋找線索。 希望有人可能會對此有一個答案。

謝謝。

在主目錄中添加名為templates的文件夾,即與app文件夾位於同一目錄中。 更新settings.py的TEMPLATES變量中的DIRS路徑。
現在django在模板目錄中查找模板。 您還可以在模板文件夾中添加特定於應用程序的文件夾,並在渲染時使用'myapp/template_name'

對於靜態更新STATIC_URL中的變量STATIC_URL (如果它不存在則添加)。 例如: STATIC_URL = '/static/' ,它在當前目錄中查找名為static的文件夾,該文件夾用於特定應用程序。 在模板中使用{% load static %} 然后,您可以鏈接到靜態文件夾,如href = "{% static 'file_name' %}".

只需將文件夾命名為app_name ,它就會被命名為您的應用名稱:

app_name/somemodule.py-tpl

將會:

yourappname/somemodule.py

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM