django访问js静态文件404

虽然做了如下配置

settings.py

INSTALLED_APPS = [
	# ...
 'django.contrib.staticfiles',
  #...
 ]

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')

urls.py

from django.views.static import serve
from music.settings import MEDIA_ROOT, STATIC_ROOT,STATIC_URL
urlpatterns = [
    re_path(r'^static/(?P<path>.*)$', serve, {'document_root': STATIC_ROOT}),
]

仍然访问静态js结果404.

原因是static文件夹建在了项目根目录下, 实际上开发环境中, static应该放在django app文件夹下面.

生产通过python manage.py collectstatic来讲app文件夹下的static文件放在项目根目录的static文件夹下面, 原因是生产服务器是根据STAIC_ROOT来读取的. 但是开发服务器是从app文件夹下面的static读取.