今天做部落格的時候對於靜態檔案以及路徑問題有過些疑惑。解決後做一下心得和記錄。
在應用設定中,有些靜態的檔案不想放在專案的 static 資料夾中。
1.建立文章物件
class arctics(models.model):
title = models.charfield(max_length=200)
arctic = models.textfield(max_length=100000)
# 設定預設圖路徑 和 上傳檔案的路徑
image = models.imagefield(default="blog/static/default.png", upload_to="blog/static/image")
#設定專案在後台的顯示
def __str__(self):
return self.title
2.自定義靜態檔案路徑
# 在 settings.py 中設定
blog_url = '/blog/'
blog_root = os.path.join(base_dir, 'blog')
3.分離專案與應用的urls
#專案層的urls.py:
urlpatterns = [
path('', views.index),
path('admin/', admin.site.urls),
path('blog/', include('blog.urls')),
]#應用層的urls.py:
urlpatterns = [
path('',views.blogindex),
]
4.前往應用層的urls.py檔案下, 新增靜態資料夾的urls 和根目錄
# 在 urls.py 中設定 靜態資料夾的路徑url和的根目錄
from django.conf.urls.static import static
from django.conf import settings
urlpatterns += static(settings.blog_url,document_root=settings.blog_root)
5.執行django專案,輸入乙個不完整的應用路徑,可以看到新的檔案路徑:
blog/ ^blog\/(?p.*)$
以上是個人一些試驗的理解和應用,如有不妥的地方,歡迎各位補充。
Django 自定義標籤
模版是乙個用django模版語言標記過的python字串。模版可以包含模版標籤和變數。模版標籤是在乙個模版裡起作用的標記。比如,乙個模版標籤可以產生控制結構的內容 if或者for 可以獲取資料庫內容或者訪問其它模版標籤。乙個標籤塊被包圍 變數標籤被 包圍 context是乙個傳遞給模版的key va...
Django自定義函式
templates 母版.html 引入 extends include 自定義函式 simpla tag 2.任意python檔案 a.from django import template from django.utils.safestring import mark safe registe...
django自定義Color Picker控制項
django提供了豐富的部件,以滿足我們對各種html控制項的需求。並且如果有特別的要求,我們還可以很容易的編寫自己的控制項,本文主要內容是自定義乙個顏色選擇器的控制項,該控制項是在input的基礎上,實現顏色的選擇和展示。如果你不知道如何實現自定義django的form控制項的話,可以檢視djan...