In your urls.py, you have the url name as “ytlinks” with an s.  But your url 
tag doesn’t have the s.
Try this:
{% url ‘ytlinks.ytlinks’ %}


From: [email protected] [mailto:[email protected]] On 
Behalf Of xyron
Sent: Thursday, February 16, 2017 9:35 AM
To: Django users
Subject: Error using url in django template language

Hey there,

I'm searching since more than 12 hours for a solution for my problem and I'm 
kinda frustrated.

I want to use a form and define the action link using django template language 
in a html-file:


{% extends "base/header.html" %}
{% block content %}

  <div class="login">
   <h1>Enter Youtube-Link</h1>
    <form action=" {% url 'links.views.save_ytlink' %} " method="post">

I get following error:

Reverse for 'links.views.save_ytlink' with arguments '()' and keyword arguments 
'{}' not found. 0 pattern(s) tried: []

My project structure looks like this:

────mysite
    ├───links
    │   ├───templates
    │   │   └───home.html
    │   ├───urls.py
    │   └───views.py
    └───mainapp
        ├───templates
        │   ├───base
        │   │   └───header.html
        │   ├───links
        │   └───register
        ├───────urls.py
        └───────views.py

mainapp.urls.py looks like this:


urlpatterns = [
    url(r'^', include('links.urls', namespace='ytlinks'), name='index'),
    url(r'^admin/', admin.site.urls),
    url(r'^register', include('register.urls'), name='register'),
    url(r'^ytlinks/', include('links.urls', namespace='ytlinks')),
]

links.urls.py looks like this:


urlpatterns = [
       url(r'^save_ytlink', views.save_ytlink, name='save_ytlink'),
       url(r'^list$', views.ytlinks_list, name='ytlinks_list'),
       url(r'^', views.ytlinks, name='ytlinks'),
]

links.views.py looks like this:

def save_ytlink(request):
    msg = ""
    msg_status = "" # possible: 'success', 'info', 'danger', 'warning'

    # Check if user came here by form
    if request.method == 'GET':
        return render(request, 'home.html')

    ytlink = request.POST['ytlink']
    allow_save = True

    # Validation
    # ...

    return render(request, 'home.html', {'queryset':'', 'msg':msg, 
'msg_status':msg_status})

Things I tried:


<form action=" {% url 'links.views.save_ytlink' %} " method="post">

<form action=" {% url 'save_ytlink' %} " method="post">

<form action=" {% url save_ytlink %} " method="post">

<form action=" {% url "links.views.save_ytlink" %} " method="post">

<form action=" {% url myapp:save_ytlink %} " method="post">



(and much more)


I tried to set namespaces, to see if it makes any difference. Also stuff with 
../views.save_ytlink didn't work.

Even if I create a file (test.html) in the same directory, it won't work.

{% url 'test.html' %}

It seems that I can't resolve any kind of URL. If I set <form action="" 
method="post"> it works.

Your help is really, really appreciated. I don't know anymore what to do.

So long, xyron

--
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to 
[email protected]<mailto:[email protected]>.
To post to this group, send email to 
[email protected]<mailto:[email protected]>.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/8c09cef7-1ee3-4f38-9776-601998692621%40googlegroups.com<https://groups.google.com/d/msgid/django-users/8c09cef7-1ee3-4f38-9776-601998692621%40googlegroups.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/1030a2b4d9754b9cb75cc695a7e6de25%40ISS1.ISS.LOCAL.
For more options, visit https://groups.google.com/d/optout.

Reply via email to