【问题标题】:Django store to db using POST without django formDjango 使用没有 Django 表单的 POST 存储到数据库
【发布时间】:2016-01-09 18:42:57
【问题描述】:

我是 Django 的新手。 除了使用 Django 表单访问 django 数据库之外,我现在正在尝试使用 POST 请求 来做到这一点。但它不起作用,没有数据存储到数据库。

在views.py中

def event_join(request):
    print ("event_join")
    if request.method == 'POST':
        userID=request.GET['usrID']

        join_id = e_id
        usr = Usr.objects.get(usr_id=userID)
        if join_id in usr.join_ids.split(','):
         print "Joined already!"
        else:
            usr.join_ids += ',' + join_id
            usr.save()

            Event_member.objects.create(
                e_id = join_id,
                usr_id = userID,
                star_to_emer = 0,
                star_from_emer = 0,
            )

    return render(request, 'index.html', {
    'unfinished_events': Event.objects.filter(finish=0)})

和按钮激活功能加入

var join = function() {
  console.log(userID);
  $.post('/event_join', {usrID:userID}, function(data) {});
}

在 urls.py - urlpatterns

url(r'^event_join/$', views.event_join, name='event_join'),

【问题讨论】:

    标签: django post


    【解决方案1】:

    您正在检查 POST 调用中的 GET 参数。修改你的代码至少要做:

    userID = request.POST['usrID']
    

    接下来,您将发布到/event_join,但您的urls.py 配置为处理带有斜杠^event_join/$ 的路径。使它们保持一致。

    【讨论】:

      猜你喜欢
      • 2021-05-03
      • 1970-01-01
      • 2021-10-04
      • 2020-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-02
      • 2015-02-03
      相关资源
      最近更新 更多