当前位置: 首页 > 网络应用技术

如何在Django中介绍静态文件(Django生成静态页面)

时间:2023-03-08 22:41:11 网络应用技术

  简介:今天,首席CTO Note将与您分享Django如何介绍静态文件的相关内容。如果您可以解决您现在面临的问题,请不要忘记注意此网站。让我们现在开始!

  此问题在开发环境和生产环境中是不同的:在URLS.PY语句中添加了开发环境:例如(r'^static/(?ppath。*)$','django.views.static。服务',{'document_root':settings.static_root}),因此,在静态文件服务生产环境中,您需要使用收集指令收集静态文件,并部署在特殊的前端-end -end -end -end -end -end -end -end -eng http Server中要求。

  您可以使用服务器来配置,js,css,img到相应的路径。您还可以添加(r'^媒体/(?ppath。*)$','django.views.static.serve'':settings.static_path}),您可以在settings.py.you中使用绝对路径。 /媒体 /?的静态文件。(JS | csicle w wctg es)在该路径下。

  我想将以前的ASP.NET网站移植到Django,并发现Django似乎得到了静态资源的支持。您无法根据相对路径直接找到某些配置,找到很多解决方案,并按以下方式进行整理:

  1. Django的静态资源配置与版本!InterSectionIntersectionRemember!InterSectionIntersection1.3先前和将来的配置不同!IntersectionSectionTrestection以下内容仅适用于Django1.9;

  2.安装在设置中

  应用

  包括'django.contrib.staticfiles';

  3. static_url in steratings.py是应用程序目录中静态文件所在的文件夹的相对路径。默认值为/静态/可以自定义;

  4.调用时使用以下表格:

  {%

  加载

  静止的

  %}

  IMG

  src =“ {%

  静止的

  “ my_app/myexample.jpg”

  %}“”

  alt =“ [#0#] [#1#]” //

  导入JS,IMG和其他静态文件后导入错误:

  文件

  “ D:python27libmimetypes.py”,“”

  线

  249,

  在

  enum_types

  CTYPE

  =

  ctype.encode(default_encoding)

  #

  忽略

  在

  3.x!

  Unicodecodeerror:

  'ascii'

  编解码器

  cant

  解码

  字节

  0xB0

  在

  姿势

  1:

  序数

  不是

  在

  范围(128)

  [27/dec/2015

  15:26:32]

  “得到

  /static/assets/img/nextpage_small_grey.jpg

  http/1.1”

  500

  59

  在python安装目录中的lib/site包装中添加文件sitecustomize.py,找到解决方案的密钥错误文件mimetypes.py.py。

  进口

  系统

  sys.setdefaultencoding(“ CP1251”)

  我设置的编码格式是UTF-8,我不知道其他格式是否可以。Restart操作和成功。

  建议使用新版本的Django进行开发。可以肯定的是,Django 1.4之后的Django 1.4的版本应支持以下设置

  注意:Django 1.4版本需要在项目/urls.py的底部添加:

  来自django.contrib.staticfiles.urls导入staticfiles_urlpatterns urlpatterns += staticfiles_urlpatterns()

  Django 1.5 -django 1.8不需要添加上述代码。

  settings.py静态文件相关示例代码和说明:

  #静态文件(CSS,JavaScript,图像)

  static_url ='/static/'#运行Python Manage.py collectStatic#static_root文件夹用于复制所有staticfiles_dirs中的所有文件,以及每个应用程序中的静态文件。join(base_dir,'Collected_static')#将静态文件存储在项目中的其他文件夹可用于将公共静态文件存储在项目中。Static_root#如果您不想使用staticfiles_ders,则不能使用它,您可以使用它,可以还放入staticfiles_dirs =(os.path.join(base_dir,“ comm_static”),'/path/path/path/erther/static/',#您到达时可以编写此行)#这是默认设置。Django将在staticfiles_dirs中的文件夹中找到一个文件和每个应用程序下的静态文件夹。))))

  静态文件放在相应的应用程序下的静态文件夹中,或staticfiles_dirs中的文件夹。

  当debug = true时,django可以自动找到放置在其中的静态文件。(django“ search设备”在staticfiles_finders中,找到找到它的过程,查找该过程的过程类似于在使用xxx的过程中使用xxx的过程在Python中导入XXX)。

  示例项目dj18 statatic,在应用程序应用下的静态中有一个zqxt.png图片:

  dj18statatic b-博客│├├─Init__。py│ -admin.py││-─..m- - __INIT __。py│├─................默认情况下,您会发现此文件夹││└-[zqxt.png]│-tests.py│││└└└└└└└已添加到staticfiles_ders│J--[JQuery.js]│├│├│├│├│├──-py│├─—settings.py│-urls.py│ - w - manage.py- manage..pypy

  当debug = true in settings.py中时,打开静态文件以打开开发服务器python manage.py runserver直接访问 /static/zqxt.png。

  您还可以在settings.py中指定所有应用程序共享的静态文件,例如jquery.js等。

  staticfiles_dirs =(os.path.join(base_dir,“ commit_static”),),),),),),),),),),),),),),)

  将jquery.js放在common_stative/js/中,以便您可以在/static/js/jquery.js中访问它!

  在Django中,您通常需要配置图片,视频和其他格式文件。在配置过程中,它更为复杂。这是一个记录:

  将以下目录添加到文件末尾以存储上传的文件

  在模型中,图像字段是%y代表年份的年份,%m表示一个月。上传文件时,表示将上传到图像目录和当前限制目录的文件夹。

  image = models.imagefield(upload_to =“ image/%y/%m”,空白= true)

  其中,SRC中的{{Media_url}}将在模板中渲染,以用作 /媒体 /

  如果要在模板中使用{{Media_url}},请在“ template”的“ context_processis”选项中添加django.template.contexors.media。

  通过上述步骤,结果基本上可以正常呈现在前端,但是您需要在图片中添加一个URL才能正常显示。

  第一个行为介绍了静态文件的服务器,第二个行为是在配置文件中的介质_root中介绍的

  加入URL:

  1.首先在应用程序文件中创建一个新的文件夹静态,然后创建三个子文件夹JS,样式,图像。

  2.在设置中。

  static_url ='/static/'

  staticfiles_dirs =(

  os.path.join(base_dir,“ static”),

  治愈

  3.添加HTML页面的头部:

  {%加载staticfiles%}

  html

  头

  标题Maizi Academy/Title

  /头

  身体

  4,,

  在HTML模板页面上,您可以通过以下两种方式调用它:

  img src =“ https://www.shouxicto.com/article/ {%静态'images/logo.gif'%}” alt =“” /////

  img src =“ https://www.shouxicto.com/stative/images/acers/acers/acers/acer.gif” alt =“” /////

  建议使用第二种类型,因为如果图片名称是动态的,则可以通过视图绑定:

  img src =“ https://www.shouxicto.com/stative/images/ {name}} .gif“ alt =”“” /////

  CSS参考也是如此:

  链接rel =“ stylesheet” href =“ https://www.shouxicto.com/article/ {%static'state'state/base.css'%}“ type =“ text/css”

  链接rel =“ stylesheet” href =“ https://www.shouxicto.com/stative/style/base.css” type =“ text/css”

  JS也是如此:

  脚本类型=“ text/javascript” src =“ https://www.shouxicto.com/article/ {%static'js/jquery-1.8.3.3.3.min.js'%}”//

  脚本类型=“ text/javascript” src =“ https://www.shouxicto.com/stative/js/jqury-1.8.min.js"///

  结论:以上是首席CTO注释为所有人编辑Django的全部内容。感谢您阅读本网站的内容。我希望这对您有帮助。有关Django如何介绍静态文件Forgot的相关内容以在此站点上找到它的更多信息。