国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Django中的靜態文件管理

2019-11-14 17:47:49
字體:
來源:轉載
供稿:網友

Static files管理

static files指一些用到的CSS,javascr

3.將某個app要用的靜態文件放置到my_app/static/my_app中,例如my_app/static/my_app/my_image.jpg.

  當然也可以直接放在my_app/static中,但這樣的話,如果在不同的app中有相同名字的靜態文件,就會產生沖突。

4.模板中使用

{% load staticfiles %}<img src="{% static 'my_app/myexample.jpg' %}" alt="My image"/>

5.如果有些不是某個app特用的靜態文件,可以建立static文件夾將靜態文件放置其中,settings設置:

STATICFILES_DIRS = (    os.path.join(BASE_DIR, "static"),    '/var/www/static/',)

在部署階段,設置

STATIC_ROOT = "/var/www/example.com/static/"

然后運行

python manage.py collectstatic

將各個app內的靜態文件及STATICFILES_DIRS內的靜態文件收集起來放置到STATIC_ROOT中由服務器apache或nhinx管理即可。

Media管理

MEDIA:指用戶上傳的文件,比如在Model里面的FileFIeld,ImageField上傳的文件。

假如有個Model

from django.db import modelsclass Car(models.Model):    name = models.CharField(max_length=255)    PRice = models.DecimalField(max_digits=5, decimal_places=2)    photo = models.ImageField(upload_to='cars')

設置MEDIA_ROOT=os.path.join(BASE_DIR , 'media'),用來存儲用戶上傳的文件

MEDIA_URL=/media/,為MEDIA_ROOT中的文件建立url地址。

當建立一個Car實例時,Car的ImageField字段圖片就存到media/cars文件夾里面

>>> car = Car.objects.get(name="57 Chevy")>>> car.photo<ImageFieldFile: chevy.jpg>>>> car.photo.nameu'cars/chevy.jpg'>>> car.photo.pathu'/media/cars/chevy.jpg'>>> car.photo.urlu'/media/cars/chevy.jpg'

在模板中使用圖片

<img src="{{ car.photo.url }}" alt="My image"/>

在urls.py中使用 django.contrib.staticfiles.views.serve() view

from django.conf import settings #from myapp import settingsfrom django.conf.urls.static import staticurlpatterns = patterns('',    # ... the rest of your URLconf goes here ...) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

這樣就可以使用media文件了。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 施甸县| 崇礼县| 大田县| 吉水县| 屯留县| 宜都市| 嘉兴市| 阳山县| 夏邑县| 卢氏县| 云和县| 塘沽区| 大同市| 靖江市| 富蕴县| 洛隆县| 双鸭山市| 富裕县| 湘西| 大安市| 丁青县| 华池县| 石台县| 淮南市| 灵丘县| 南充市| 晴隆县| 陇南市| 正阳县| 延津县| 乌审旗| 长宁区| 临沧市| 上高县| 新野县| 石门县| 体育| 同江市| 西林县| 墨竹工卡县| 靖宇县|