2016-04-27 66 views
0

我使用Django的休息-auth的,當我打的網址/休息-auth /中登錄我看到類似以下內容:Django的形式爭奪在瀏覽器中直接API訪問

enter image description here

我想複製類似的事情,我有一個名爲農場與如姓名,地址等幾個屬性模型,基本上我不會對我的客戶端形式和發佈表單數據將節省Farm對象在我的數據庫。

到目前爲止,我已經創建了一個形式如下:

class FarmForm(ModelForm): 
class Meta: 
    model = Farm 
    fields = ['farm_name', 'address'] 

和視圖:

@api_view(['POST']) 
def addFarm(request): 
form = FarmForm() 
if request.POST: 
    form = FarmForm(request.POST) 
    if form.is_valid(): 
     farm = form.save() 
     return HttpResponse("Thank you") 
    else: 
     return HttpResponse("Form not valid") 

我想澳的純休息的API,在這種情況下,沒有Django模板。我有一個網址url(r'^farms/save/$', views.addFarm),保存農場,但是當我在瀏覽器中點擊這個網址,我看到類似以下內容: enter image description here

  1. 爲什麼我不能看到這樣的登錄表單在我的情況?我還需要做些什麼?
  2. 從我的表單發佈原始數據(如{"farm_name":"my farm","address":"my address",})會給我「JSON解析錯誤 - 期望使用雙引號括起來的屬性名稱:第1行第47列(char 46)」錯誤。 爲什麼?我錯過了什麼?

  3. 是否有純粹的REST API來處理形式的情況下,一個乾淨的方式?有任何教程顯示一個簡單的模型,相應的ModelForm和處理POST請求的視圖?

回答