2016-12-20 37 views
0

我正在写一个代码,从表单中获取数据,通过ajax(.js文件)发送到服务器。我想从服务器发送相同的数据到数据库,在这里我的数据库是mongo db。从.js文件ajax到服务器,然后到django项目中的数据库

AJAX:

function letsPostIt(data) { console.log(data); $.ajax({ type: 'POST', url: '/gmaps', data: { location: data }, contentType: "application/json", dataType: 'json' }); }

现在我不能写我的views.py和models.py文件,以从这里发送数据到我的数据库。

我现在的views.py文件:

from django.shortcuts import render, get_object_or_404 
from registration.models import Value 
from django.http import HttpResponse 
def letsPostIt(request): 
post_text = request.POST.get('location') 
post = Value(text=post_text) 
post.save() 
return HttpResponse() 
from registration.models import Value 
def gmaps(request): 
val = Value.objects.all() 
post=Value(text=val) 
post.save() 
return render(request, 'gmaps.html', {'values': val}) 

models.py文件:

from django.db import models 
from mongoengine import * 
class Value(models.Model): 
    text = models.CharField(max_length=200) 
def __str__(self): 
return self.title 

urls.py

from django.conf.urls import url 
from registration import views as reg_views 
urlpatterns = [ 
     url(r'^gmaps/',reg_views.gmaps), 
     url(r'^gmaps/pos/',reg_views.letsPostIt), 
] 

我是新来的Django,因此具有非常关于使用的语法和术语的想法较少。 我在这里没有收到任何错误,但在进行迁移时,没有检测到任何更改,并且数据库中的集合没有使用用户的值创建。 在这方面的任何帮助将非常感激。

+0

什么不行?在gmaps中你有2个回报为什么? – madalinivascu

+1

在开始创建(相对)复杂的解决方案之前,我建议您首先完成Django教程:https://docs.djangoproject.com/en/1.10/intro/tutorial01/ – skoll

+0

我删除了最后一次使用HttpResponse @madalinivascu –

回答

0

你似乎在混淆查询和创建。顾名思义,POST.objects.get()用于从数据库获取现有对象。由于技能说,在评论,这是在教程的所有充分说明

post = POST(text=post_text) 
post.save() 

要创建一个新的职位,你应该用你想要的数据初始化它,然后保存。

+0

非常感谢你@Daniel Roseman' –

相关问题