将GCM注册ID从客户端应用程序发布到Django模型

时间:2015-06-27 12:18:00

标签: django post django-models push-notification google-cloud-messaging

我有一个简单的Django模型,可以使用我的Android应用程序保存用户的注册ID和IMEI:

class Device(models.Model):
    registration_id = models.CharField(max_length=500)
    imei_id = models.CharField(max_length=500)

它有一个附带的观点:

class DeviceCreateView(CreateView):
    model = Device
    form_class = DeviceForm

该视图在urls.py中非常简单地引用,如下所示:

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^$', DeviceCreateView.as_view(), name='home'),
]

还有一个相应的forms.py,其中包含:

class DeviceForm(forms.ModelForm):
    class Meta:
        model = Device
        fields = ("registration_id", "imei_id")

最后,这是与之相关的模板:

<form method="POST" action="{% url 'home' %}">
{% csrf_token %}
{{ form.as_p }}
<button>Submit</button>
</form>

这为我提供了一个简洁的小型Web服务,可以手动输入设备的regis_id和IMEI,并将其存储在数据库中。 但我想要的是直接将regis_id和IMEI从客户端应用程序发布到我的Django模型,而不是手动执行。客户端不是我的任务,我只需要做服务器端。如何更改我的Web服务,以便它可以从客户端“接收”相关值?这可能很简单,但作为一个新手,我正在努力解决这个问题。谁能给我一个如何做到的简单例子?

1 个答案:

答案 0 :(得分:0)

从我收集的内容中,您需要一个url,您的Android应用程序可以在其中发送数据(即以xml的形式,并且url可以直接将数据存储在您的数据库中) 如果这是正确的,那么我相信您要查找的关键字是“wsgi”。

我认为this post可以帮助理解和编写基本的Web服务。