File tree Expand file tree Collapse file tree 3 files changed +22
-4
lines changed 
resources/session08/mysite Expand file tree Collapse file tree 3 files changed +22
-4
lines changed Original file line number Diff line number Diff line change @@ -5,4 +5,7 @@ class PostForm(forms.ModelForm):
55
66    class  Meta :
77        model  =  Post 
8-         fields  =  ('title' , 'text' , 'author' )
8+         fields  =  ('title' , 'text' , 'author' )
9+         widgets  =  {
10+             'author' : forms .HiddenInput (),
11+         }
Original file line number Diff line number Diff line change 11from  django .http  import  HttpResponse , Http404 
2+ from  django .http  import  HttpResponseRedirect 
23from  django .shortcuts  import  render 
34from  django .core .exceptions  import  PermissionDenied 
45from  django .core .urlresolvers  import  reverse 
@@ -42,9 +43,16 @@ def add_view(request):
4243        raise  PermissionDenied 
4344    if  request .method  ==  'POST' :
4445        form  =  PostForm (request .POST )
45-         # handle form submission 
46+         if  form .is_valid :
47+             post  =  form .save ()
48+             msg  =  "post '%s' saved"  %  post 
49+             messages .add_message (request , messages .INFO , msg )
50+             return  HttpResponseRedirect (reverse ('blog_index' ))
51+         else :
52+             messages .add_message ("please fix the errors below" )
4653    else :
47-         form  =  PostForm ()
54+         initial  =  {'author' : user }
55+         form  =  PostForm (initial = initial )
4856
4957    context  =  {'form' : form }
5058    return  render (request , 'add.html' , context )
Original file line number Diff line number Diff line change 99      < ul  id ="control-bar "> 
1010      {% if user.is_authenticated %}
1111        < li > < a  href ="{% url 'add_post' %} "> new post</ a > </ li > 
12-         {% if user.is_admin  %}< li > < a  href ="{% url 'admin:index' %} "> admin</ a > </ li > {% endif %}
12+         {% if user.is_superuser  %}< li > < a  href ="{% url 'admin:index' %} "> admin</ a > </ li > {% endif %}
1313        < li > < a  href ="{% url 'logout' %} "> logout</ a > </ li > 
1414      {% else %}
1515        < li > < a  href ="{% url 'login' %} "> login</ a > </ li > 
1616      {% endif %}
1717      </ ul > 
1818    </ div > 
1919    < div  id ="container "> 
20+       {% if messages %}
21+       < div  class ="notification "> 
22+        {% for message in messages %}
23+        < p > {{ message }}</ p > 
24+        {% endfor %}
25+       </ div > 
26+       {% endif %}
2027      < div  id ="content "> 
2128      {% block content %}
2229       [content will go here]
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments