自从我开始使用Django以来,我一直在解决一些荒谬的问题。最近,当我启动一个新项目并在服务器上运行它时,Django的管理CSS没有加载。我在服务器上运行的最后一个项目,过了一段时间就好了,真实的的Django管理模板在那里,CSS加载完毕,它正在工作。但是这次同样的问题又发生了,我不知道如何解决它,因为项目here is the photo是原始的,没有特殊的代码。我不知道这是不是Chrome的问题,但我在其他浏览器上试过,结果是一样的。
如果你能帮助我,我会很高兴
自从我开始使用Django以来,我一直在解决一些荒谬的问题。最近,当我启动一个新项目并在服务器上运行它时,Django的管理CSS没有加载。我在服务器上运行的最后一个项目,过了一段时间就好了,真实的的Django管理模板在那里,CSS加载完毕,它正在工作。但是这次同样的问题又发生了,我不知道如何解决它,因为项目here is the photo是原始的,没有特殊的代码。我不知道这是不是Chrome的问题,但我在其他浏览器上试过,结果是一样的。
如果你能帮助我,我会很高兴
2条答案
按热度按时间rsaldnfx1#
我找到的答案是将www.example.com中的
STATIC_URL = 'static/'
更改settings.py为STATIC_URL = '/static/'
。只有一个“/”可能会改变整个管理员外观。这个问题可能不会发生在每个人身上,但在Pycharm中运行代码,我已经解决了很长时间。wljmcqd82#
如果此问题发生在本地,则只需更改您的settings.py
然后运行collectstatic,确保您有一个正确的
STATIC_ROOT
目录,该目录也在settings.py
文件中如果您已经在生产服务器上部署了应用程序,那么您必须遵循某些步骤来获取样式表和JavaScript文件。
首先在你的
urls.py
中你需要添加以下代码如果你不想使用AWS S3,那么你可以使用django应用程序发送css/js(这不是理想的做法),或者你可以使用nginx或apachee发送css/js。
Nginx发送js/css你必须添加一个静态和媒体文件根,可以被你的django应用程序访问,我通常使用
/var/www/
从任何Linux服务器提供静态和媒体那么如果你用的是nginx
如果它仍然不工作,那么你的django应用程序可能无法使用给定的static_root和media目录,请确保你的应用程序可以访问它们
如果你想从你的django应用程序发送js/css(最好不要在生产中这样做)
安装
whitenoise
在您的设置文件中