


Detailed explanation of calling static files in Django learning
This article mainly introduces the detailed explanation of calling static files for Django learning. It has certain reference value. Now I share it with you. Friends in need can refer to it.
Preface
Static files refer to js, css, pictures, videos and other files in the website. This article mainly introduces the relevant content about static file calling in Django learning and shares it with everyone. Reference study, not much to say below, let’s take a look at the detailed introduction
The method is as follows
1.settings .py static file related sample code and instructions:
# Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/1.8/howto/static-files/ STATIC_URL = '/static/' # 当运行 python manage.py collectstatic 的时候 # STATIC_ROOT 文件夹 是用来将所有STATICFILES_DIRS中所有文件夹中的文件,以及各app中static中的文件都复制过来 # 把这些文件放到一起是为了用apache等部署的时候更方便 STATIC_ROOT = os.path.join(BASE_DIR, 'collected_static') # 其它 存放静态文件的文件夹,可以用来存放项目中公用的静态文件,里面不能包含 STATIC_ROOT # 如果不想用 STATICFILES_DIRS 可以不用,都放在 app 里的 static 中也可以 STATICFILES_DIRS = ( os.path.join(BASE_DIR, "common_static"), '/path/to/others/static/', # 用不到的时候可以不写这一行 ) # 这个是默认设置,Django 默认会在 STATICFILES_DIRS中的文件夹 和 各app下的static文件夹中找文件 # 注意有先后顺序,找到了就不再继续找了 STATICFILES_FINDERS = ( "django.contrib.staticfiles.finders.FileSystemFinder", "django.contrib.staticfiles.finders.AppDirectoriesFinder" )
##2.STATIC_ROOT
STATIC_ROOT = os.path.join(BASE_DIR, 'collect_static')#BASE_DIR是项目的绝对地址STATIC_ROOT is the directory where all static files are aggregated when deploying static files (pyhton manage.py collectstatic). STATIC_ROOT should be written as an absolute address. Here, for example, mine The project mysite is /home/mysite/, then STATIC_ROOT is /home/mysite/collect_static/When deploying the project, enter in the terminal:
python manage.py collectstaticdjango will copy all static files to the STATIC_ROOT folder
3.STATICFILES_DIRS
STATIC_ROOT only comes into play during deployment, but in actual situations , there are two general placement locations for static files: 1. One is to create a new static folder in each app and put the static files in it. When loading static files, for example, in the template Static files are used in django will automatically search for the static folder in each app (so, don’t write the wrong name of the folder, otherwise django will not be able to find your folder2. Another option is to create a public folder outside all app files. Because some static files are not unique to a certain app, you can put them in In a public folder for easy management (note that creating a public static file folder is just a way to facilitate management, but it is not necessary. app can apply static files across apps because Finally, all static files will exist in STATIC_ROOT) The question now is how to let django know that you put some static files in public folders other than app, then you need to configure STATICFILES_DIRSSTATICFILES_DIRS = ( os.path.join(BASE_DIR, 'common_static'), )STATICFILES_DIRS tells django to first look for static files in STATICFILES_DIRS, and then look for them in the static folder of each app (note that django looks for static files It is a lazy search. It stops searching when it finds the first one)
http://192.168. 1.2:8000/home/mysite/common_static/myapp/photo.png
STATIC_URL = '/static/'Then you can enter on the browser:
http://192.168.1.2:8000/static/common_static/myapp/photo.png
HTTP: //192.168.1.2:8000/static is equivalent to STATIC_ROOT of the local address
A brief analysis of STATIC_ROOT, STATIC_URL and STATICFILES_DIRS in Django
The above is the detailed content of Detailed explanation of calling static files in Django learning. For more information, please follow other related articles on the PHP Chinese website!

Pythonusesahybridmodelofcompilationandinterpretation:1)ThePythoninterpretercompilessourcecodeintoplatform-independentbytecode.2)ThePythonVirtualMachine(PVM)thenexecutesthisbytecode,balancingeaseofusewithperformance.

Pythonisbothinterpretedandcompiled.1)It'scompiledtobytecodeforportabilityacrossplatforms.2)Thebytecodeistheninterpreted,allowingfordynamictypingandrapiddevelopment,thoughitmaybeslowerthanfullycompiledlanguages.

Forloopsareidealwhenyouknowthenumberofiterationsinadvance,whilewhileloopsarebetterforsituationswhereyouneedtoloopuntilaconditionismet.Forloopsaremoreefficientandreadable,suitableforiteratingoversequences,whereaswhileloopsoffermorecontrolandareusefulf

Forloopsareusedwhenthenumberofiterationsisknowninadvance,whilewhileloopsareusedwhentheiterationsdependonacondition.1)Forloopsareidealforiteratingoversequenceslikelistsorarrays.2)Whileloopsaresuitableforscenarioswheretheloopcontinuesuntilaspecificcond

Pythonisnotpurelyinterpreted;itusesahybridapproachofbytecodecompilationandruntimeinterpretation.1)Pythoncompilessourcecodeintobytecode,whichisthenexecutedbythePythonVirtualMachine(PVM).2)Thisprocessallowsforrapiddevelopmentbutcanimpactperformance,req

ToconcatenatelistsinPythonwiththesameelements,use:1)the operatortokeepduplicates,2)asettoremoveduplicates,or3)listcomprehensionforcontroloverduplicates,eachmethodhasdifferentperformanceandorderimplications.

Pythonisaninterpretedlanguage,offeringeaseofuseandflexibilitybutfacingperformancelimitationsincriticalapplications.1)InterpretedlanguageslikePythonexecuteline-by-line,allowingimmediatefeedbackandrapidprototyping.2)CompiledlanguageslikeC/C transformt

Useforloopswhenthenumberofiterationsisknowninadvance,andwhileloopswheniterationsdependonacondition.1)Forloopsareidealforsequenceslikelistsorranges.2)Whileloopssuitscenarioswheretheloopcontinuesuntilaspecificconditionismet,usefulforuserinputsoralgorit


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Dreamweaver Mac version
Visual web development tools

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 English version
Recommended: Win version, supports code prompts!

WebStorm Mac version
Useful JavaScript development tools
