Python Django-静态文件夹不在基础项目中

Python Django-静态文件夹不在基础项目中,python,django,django-staticfiles,Python,Django,Django Staticfiles,我在将我的“静态”文件夹移出基本的“django_项目”时遇到一些问题。根据我的经验,Django在基本项目中寻找“静态”文件夹,但对我来说它看起来很难看,我想把它移到所有其他Django应用程序的旁边 这是我当前的文件目录设置 /home/django/django_project/ /django_project/ /myapplication/ /templates/ /static/ 现在,“templates”文件夹工作正常,我可以毫不费力地找到我所有

我在将我的“静态”文件夹移出基本的“django_项目”时遇到一些问题。根据我的经验,Django在基本项目中寻找“静态”文件夹,但对我来说它看起来很难看,我想把它移到所有其他Django应用程序的旁边

这是我当前的文件目录设置

/home/django/django_project/
    /django_project/
    /myapplication/
    /templates/
    /static/
现在,“templates”文件夹工作正常,我可以毫不费力地找到我所有的模板文件。但是,我找不到任何静态文件,静态设置总是欺骗我

这是“django_项目”基础项目的my settings.py文件

...

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.6/howto/static-files/

STATIC_URL = '/static/'

# Go back one directory from this file and move into the 'static' folder
STATICFILES_DIRS = (
    os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..', 'static')),
)

# Template files (HTML)

TEMPLATE_DIRS = (
    '/home/django/django_project/templates/',
)

任何人都可以写出STATIC\u URL或STATICFILES\u DIR,以便它指向我的“/home/django/django\u project/STATIC/”文件夹吗?提前谢谢。

在settings.py中尝试此功能

STATIC_ROOT='/path/to/STATIC/folder'


只需将右侧更改为静态文件夹的绝对路径。

试试这样,它会更干净

STATIC_PATH = os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..', 'static'))

STATIC_URL = '/static/' # You may find this is already defined as such.

STATICFILES_DIRS = (
STATIC_PATH,
)
STATICFILE_DIRS-指定本地磁盘上静态目录的位置

静态URL-指定从web服务器访问静态媒体的URL

假设您的静态目录中有dragontoothless.jpg文件。要从html页面提供它,您可以使用如下内容

<img src="/static/dragontoothless.jpg" />

希望这有帮助

注意:

os.path.abspath(文件名)
返回从当前工作目录中看到的绝对路径。它不检查文件是否实际存在

os.path.dirname
将查找目录并返回路径名路径的目录名。若要获取绝对路径的dirname,请使用
os.path.dirname(os.path.dirname(_文件__))

BASE_DIR=os.path.dirname(os.path.dirname(文件

静态url是

STATIC_URL = '/static/'
静态文件\u目录=[ join(BASE_DIR,“static”), ]


通过将静态文件放在另一个文件夹中并创建staticfiles dir作为:staticfiles\u DIRS=[os.path.join(BASE\u dir,'static/other folder'),]解决了此问题。

是否有任何错误?或者在尝试访问静态文件时使用404?当我查看页面源并单击包含静态文件的链接时,使用404。该网站仍然显示,只是没有静态文件。我唯一的想法是,
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
不是你想象的那样。设置后,是否尝试将STATICFILES\u DIRS的值打印到调试中?它有什么值?当我从“settings.py”文件将STATICFILES\u DIR的内容打印到日志文件中时,它会打印“/home/django/django\u project/static”,这是我的静态文件夹的位置。这一切在我看来都是正确的。您在URL.py中使用什么来提供静态文件?