django - Matching query does not exist? -
this view:
def showproject(request, project_slug): project = project.objects.get(slug=project_slug) tickets = ticket.objects.filter(project=project) payload = { 'project':project, 'tickets':tickets } return render(request, 'project/project.html', payload)
this error:
traceback: file "c:\python27\lib\site-packages\django-1.3-py2.7.egg\django\core\handlers\base.py" in get_response 111. response = callback(request, *callback_args, **callback_kwargs) file "c:\\project\views.py" in showproject 13. project = project.objects.get(slug=project_slug) file "c:\python27\lib\site-packages\django-1.3-py2.7.egg\django\db\models\manager.py" in 132. return self.get_query_set().get(*args, **kwargs) file "c:\python27\lib\site-packages\django-1.3-py2.7.egg\django\db\models\query.py" in 349. % self.model._meta.object_name) exception type: doesnotexist @ /project/ticket/ exception value: project matching query not exist.
a more detailed explanation of expected: have sidebar lists open "tickets." when click on 1 of tickets, should open it. instead when try open it, i'm getting error. happening? here model class:
class project(models.model): """simple project tracking purposes""" name = models.charfield(max_length = 64) slug = models.slugfield(max_length = 100, unique=true,blank=true, null=true) description = models.charfield(max_length = 255) owner = models.foreignkey(user, related_name="+") created_on = models.datetimefield(auto_now_add = 1) active = models.booleanfield(default=true) parent = models.foreignkey("self", related_name="children", null=true, blank=true) repository = models.foreignkey("repository", related_name="projects", null=true, blank=true) book = models.foreignkey(book, related_name="+", null=true, blank=true) acl = models.manytomanyfield(aclentry) def save (self): if not self.slug: self.slug = '-'.join(self.name.lower().split()) if not self.book: book = book(name=self.name, owner=self.owner) book.save() self.book = book super(project, self).save()
here template code:
{% block title %}tickets: {{project.name}}{% endblock %} {% block main %} <div id="project-nav"> <span><a href="/project/{{project.slug}}/">tickets</a></span> <span><a href="/book/{{book.slug}}{{book.name}}">docs</a></span> <span><a href="/project/{{project.slug}}/browse">browser</a></span> </div> <div id="action-nav"> {% block actions %} <span><a href="/project/{{project.slug}}/tickets/create">create ticket</a></span> <span><a href="/project/{{ project.slug }}/tickets/recent">recent activity</a> </span> <span><a href="/project/{{ project.slug }}/tickets/my/">my tickets</a></span> {% endblock %} </div> {% ticket in tickets %} <div class="ticket"> <div class="ticket-header"> <div class="ticket-title"> <a href="/project/ticket/{{ticket.pk}}">{{ticket.subject}}</a> </div> <div id="ticket-number"> #{{ticket.pk}} </div> <div id="ticket-state"> {{ticket.get_state_display}} </div> <div id="ticket-info"> reported {{ticket.created_by}} | created: {{ticket.created_on }} | modified: {{ticket.modified_on}} </div> </div> </div> {% endfor %} </div> {% endblock %}
it seems try going this, , don't understand why. missing? much!
it says there no project
object slug
equal project_slug
.
you should catch exception below
try: project.objects.get(slug=project_slug) except project.doesnotexist: raise sth...
Comments
Post a Comment