由于某些原因,我有一个不能工作的URL。我得到一个404,“找不到‘新的’”。这是我的urls.py:
url(r'^assets/new', 'watershed.views.new_asset', name='new_asset'),我的urls.py中还有更多内容,但这是唯一包含"assets“一词的文档。如果我将这个url更改为url/new,它就可以工作。如果我拼错了资源(assettss/new),它就能正常工作。如果我取出/new并只使用"assets",它也可以正常工作。在我的视图文件夹中,我有一个__初始化__.py,它包含以下内容:
from groups import *
from members import *
from leave_group import *
from payments import *
from assets import *我还有一个assets.py,它包含以下内容:
from django.contrib.auth.decorators import login_required
from watershed.models import Member, Org, OrgToMember, Asset
from django.shortcuts import render, redirect
from django.contrib.auth.models import User
def new_asset(request):
return render(request, 'asset_add.html')我不知道Django不喜欢资产/新的什么。
更新:这是我的完整urls.py
from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Examples:
url(r'^', include('outside.urls')),
url(r'^blog', include('blog.urls')),
url(r'^admin', include(admin.site.urls)),
url(r'^logout', 'watershed.views.logout', name='logout'),
url(r'^register/create', 'watershed.views.create', name='create'),
url(r'^register', 'watershed.views.register', name='register'),
url(r'^translog/(\d+)', 'watershed.views.translog', name='translog'),
url(r'^settings', 'watershed.views.settings', name='settings'),
# Group URIs
url(r'^groups/(\d+)/leave', 'watershed.views.leave_group', name='leave_group'),
url(r'^groups/(\d+)/dissolve', 'watershed.views.dissolve_group', name='dissolve_group'),
url(r'^groups/new', 'watershed.views.add_group_form', name='add_group_form'),
url(r'^groups/(\d+)', 'watershed.views.dashboard', name='dashboard'),
url(r'^groups/add', 'watershed.views.add_group', name='add_group'),
url(r'^groups', 'watershed.views.groups', name='groups'),
# Member URIs
url(r'^members/(\d+)', 'watershed.views.profile', name='profile'),
url(r'^member/login', 'watershed.views.login', name='login'),
# Payments URIs
url(r'^payments', 'watershed.views.payments', name='payments'),
# Asset URIs
url(r'^assets/new', 'watershed.views.new_asset', name='new_asset'),发布于 2014-02-11 23:19:09
你的new_assets函数包含在assets.py文件中,你需要从views.py文件中导入这个函数。使用以下命令:
url(r'^assets/new', 'path.to.assets.new_asset', name='new_asset'),发布于 2014-02-13 22:38:44
我想通了。问题是,我的settings.py中的静态url是-等待它:
STATIC_URL = '/assets/'因此,很明显,其中一个必须改变。
https://stackoverflow.com/questions/21702990
复制相似问题