2017-01-22 87 views
0

我試圖添加到我的數據庫(這是一個學院的列表),與表格,但它不工作。任何想法爲什麼?它把我的成功頁面,但實際上沒有將它添加到數據庫Django添加到數據庫與表格

型號:

class College(models.Model): 
    college_name = models.CharField(max_length=120) 
    logo = models.ImageField(upload_to="logos", default="logos/default.png") 
    def __str__(self): 
     return self.college_name 
    @classmethod 
    def create(cls, college_name): 
     college = cls(college_name = college_name) 
     return college 

查看:

def add(request): 
    return render(request, 'app/add.html') 

def add_college(request): 
    school = request.POST.get('collegename_input', '') 
    College.create(school) 
    return HttpResponseRedirect('add_success') 

def add_success(request): 
    return render(request, 'app/add_success.html') 

add.html:

<h2> Add your school </h2> 
    <form action="{% url 'app:addcollege' %}" method="post"> 
     {% csrf_token %} 
     <label for="collegename_input">School: </label> 
     <input type="text" id="collegename_input" name="collegename_input" /> 
     <input type="submit" value="Add School" /> 
    </form> 

上午我錯過了什麼?

回答

0

您處理POST請求的視圖看起來不正確,因爲它沒有正確創建/保存模型。爲了節省College,您應該執行以下操作:

from django.shortcuts import redirect 

def add_college(request): 
    school = request.POST.get('collegename_input', '') 
    # College.create(school) 
    college = College(school_name=school) 
    college.save() 
    return redirect('add_success')