/ / Django URL не работи както се очаква - django, django-views, django-urls

Django URL не работи според очакванията - django, django-views, django-urls

Имам URL, който по някаква причина не работи. Получавам 404, "" новото "не може да бъде намерено". Тук е моят urls.py:

url(r"^assets/new", "watershed.views.new_asset", name="new_asset"),

Има още много мои URL адреси.py, но това е единственото, което съдържа думата "активи" в нея. Ако променя този URL адрес на нещо / ново, то работи. Ако грешно пиша активи (assettss / new), тя работи. Ако извадя / new и просто използвам "активи", той също работи добре. В папката ми за изгледи имам __ init __.py, който съдържа следното:

from groups import *
from members import *
from leave_group import *
from payments import *
from assets import *

Също така имам и asset.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"),

Отговори:

0 за отговор № 1

Вие new_assets функция съдържа в assets.py Файла, купете, ако импортирате тази функция views.py файл. Използвай това:

url(r"^assets/new", "path.to.assets.new_asset", name="new_asset"),

0 за отговор № 2

Разбрах го. Проблемът е, че статичният ми URL в моите settings.py е - изчакайте го:

STATIC_URL = "/assets/"

Така че, ясно е, че едно от тях трябва да се промени.