python - Django how to save model in view -
i'm new django. i'm having issue can't save model in views.py. concept have input field user can type in name, using request.post.get('attribute_name') can save model, it's not working. when print list of objects in model there's nothing there, though don't error message during of this.
template:
<form id="save_form" method="post" action="{% url 'project_view.views.projectz_save' %}"> {% csrf_token %} <table> <tr> <td>project name</td> <td><input name="projectz_name"/></td> </tr> </table> <input type="submit" value="save" /> </form>
views.py:
def projectz_save(request): try: p = project(name=request.post.get('projectz_name')) p.save() return redirect('http://www.google.com/') except: return redirect('http://www.google.com/')
app urls:
urlpatterns = patterns('', url(r'^$', views.index, name='index'), url(r'^$', views.register, name='register'), url(r'^$', views.projectz_save, name='project_save'),
)
site urls:
urlpatterns = patterns('', url(r'^admin/', include(admin.site.urls)), url(r'^project_view/', include('project_view.urls')),
i put in silly redirect code google.com see if views.py executing, it's not working, though said there no error messages, page refreshes. i'm sure i'm doing wrong that's easy fix, i'm noobie. :d
ok think maybe spotted problem. view
not executing because have defined 3 urls exact regex
in project urls.py
:
urlpatterns = patterns('', url(r'^$', views.index, name='index'), url(r'^$', views.register, name='register'), url(r'^$', views.projectz_save, name='project_save'), )
django match it's urls iterating on patterns in way appeared in file urls match index
. that's reason why page appears refreshing. try modify little:
urlpatterns = patterns('', url(r'^$', views.index, name='index'), url(r'^register$', views.register, name='register'), url(r'^save$', views.projectz_save, name='project_save'), )
this way can execute projectz_save
method in views.py
if action
of form matches url regex.
hope helps!
Comments
Post a Comment