Форум сайта python.su
Народ, помогите, пожалуйста, мистика какая-то!
выплевует ошибку при попытке зайти на http://127.0.0.1:8000/
Exception Type: ViewDoesNotExistпосле обновления страницы - другая ошибка и на этом все:
Exception Value: Tried save_point in module geo.world.views. Error was: ‘module’ object has no attribute ‘save_point’
Exception Location: /home/max/python/geos/parts/instance/django/core/urlresolvers.py in _get_callback, line 135
Exception Type: TypeErrorviews.py
Exception Value: ‘str’ object is not callable
Exception Location: /home/max/python/geos/parts/instance/django/core/handlers/base.py in get_response, line 100
from django.shortcuts import render_to_response
from django.template.loader import render_to_string
from django.http import HttpResponse
from django.template import RequestContext
from uni_form.helpers import FormHelper, Submit, Reset
from uni_form.helpers import Layout, Fieldset, Row, HTML
from geo.world.forms import MyForm
from world.models import World
import simplejson
def index(request):
form = MyForm()
waypoints = World.objects.order_by('name')
#form.helper.
response_dictionary = {
'form':form,
'waypoints': waypoints,
'content': render_to_string('waypoints.html', {'waypoints': waypoints}),
}
return render_to_response('index.html', response_dictionary)
def save_point(request):
"""Save waypoints"""
if request.method == 'POST':
for waypointString in request.POST.get('waypointsPayload', '').splitlines():
waypointID, waypointX, waypointY = waypointString.split()
waypoint = World.objects.get(id=int(waypointID))
waypoint.geometry.set_x(float(waypointX))
waypoint.geometry.set_y(float(waypointY))
waypoint.save()
return HttpResponse(simplejson.dumps(dict(isOk=1)), mimetype='application/json')
from django.conf.urls.defaults import *
urlpatterns = patterns('geo.world.views',
url(r'^$', 'index', name='index_page'),
url(r'^save/$', 'save_point', name='waypoints_save'),
)
url(r'^save/$', 'save_point', name='waypoints_save'),
Отредактировано (Июнь 2, 2011 16:27:46)
Офлайн
Если напрямую на http://127.0.0.1:8000/save/ стучаться, работает?
попробуйте в темплейте без urlresorvera ссылку проставить…
$.post("{% url waypoints-save %}"
Офлайн
при прямом обращении к 127.0.0.1:8000/save - 404 и не вижу своего заинклуденого урла:
(r'^$', include('geo.world.urls')),
Page not found (404)
^admin/
^accounts/login/$
^$
^media/(?P<path>.*)$
$.post("{% url waypoints_save %}"
url(r'^save/$', 'save_point', name='waypoints-save'),
Exception Type: TypeError
Exception Value: 'str' object is not callable
Exception Location: /home/max/python/geos/parts/instance/django/core/handlers/base.py in get_response, line 100
Отредактировано (Июнь 3, 2011 09:35:14)
Офлайн
max38934C таким урлом и не должно работать, как раз эту ошибку и должно выбрасывать. Префикс ведь не указан.urlpatterns = patterns('',<<<<
(r'^admin/', include(admin.site.urls)),
(r'^accounts/login/$', 'django.contrib.auth.views.login'),
url(r'^$', 'index', name='index_page'),
url(r'^save/$', 'save_point', name='waypoints-save'),
)
from geo.world.views import save_point
...
url(r'^save/$', save_poinе, name='waypoints-save'),
...
Офлайн
при прямом импорте:
from django.conf.urls.defaults import *
from geo.world.views import index, save_point
urlpatterns = patterns('',
url(r'^$', index, name='index_page'),
url(r'^save/$', save_point, name='waypoints-save'),
)
Exception Type: ImproperlyConfigured
Exception Value: The included urlconf geo.world.urls doesn't have any patterns in it
Отредактировано (Июнь 3, 2011 09:39:51)
Офлайн
{% url waypoints_save %} - тут подчеркивание
url(r'^save/$', save_poinе, name='waypoints-save'), - тут дефис
Офлайн
appetitoда, спасибо, исправил, но увы - проблема не в этом.:(
{% url waypoints_save %} - тут подчеркивание
url(r'^save/$', save_poinе, name='waypoints-save'), - тут дефис
Офлайн
Попробуйте вынесте все урлы в корневой urls.py. Может с include где-т косяк.
Упрощайте пока не найдете…
PS: (r'^$', include('geo.world.urls')), а в первом посте файл назвали url.py… вопрос где очепятка.
Отредактировано (Июнь 3, 2011 10:33:08)
Офлайн
pillвынес все в корневой урл:
Попробуйте вынесте все урлы в корневой urls.py. Может с include где-т косяк.
Упрощайте пока не найдете…
PS: (r'^$', include('geo.world.urls')), а в первом посте файл назвали url.py… вопрос где очепятка.
from django.conf.urls.defaults import patterns, include, url
from django.conf import settings
from django.contrib import admin
from django.contrib.gis import admin
admin.autodiscover()
urlpatterns = patterns('',
(r'^admin/', include(admin.site.urls)),
(r'^accounts/login/$', 'django.contrib.auth.views.login'),
url(r'^$', 'geo.world.views.index', name='index_page'),
url(r'^save/$', 'geo.world.views.save_point', name='waypoints_save'),
)
{% load uni_form_tags %}
{% load media_url %}
<html>
<head>
<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script src={% media 'js/jquery-1.6.min.js' %}></script>
</head>
<body onload='initialize()'>
<div id=map></div>
<div id=waypoints>
{{content}}
</div>
<input id="saveWaypoints" type="button" value="Save" disabled="disabled">
</br></br>
<a href="{% url index_page %}">Главная</a>
<a href="{% url waypoints_save %}">qqqqqqqqqq</a>
</br></br>
</body>
</html>
url(r'^save/$', 'geo.world.views.save_point', name='waypoints_save'),
<a href="{#% url waypoints_save %#}">qqqqqqqqqq</a>
Отредактировано (Июнь 3, 2011 11:27:31)
Офлайн
Ошибка явно не в темплейте, а в конфиге урлов.
Сделайте финальным аккордом прямой импорт в
from geo.world.views import save_point, index
urlpatterns = patterns('',
(r'^admin/', include(admin.site.urls)),
(r'^accounts/login/$', 'django.contrib.auth.views.login'),
url(r'^$', index, name='index_page'),
url(r'^save/$', save_point, name='waypoints_save'),
)
Отредактировано (Июнь 3, 2011 11:37:52)
Офлайн