使用 django trunk r13359 和 django 活塞,我创建了一个小的 restful 服务来存储字符串值。
这是我用来存储字符串的模型:
class DataStore(models.Model):
data = models.CharField(max_length=200)
url = models.URLField(default = '', verify_exists=False, blank = True)
我使用 curl 发布以下数据:
curl -d "data=somedata" http://localhost:8000/api/datastorage/
这是作为 django-piston 处理程序的一部分处理存储的代码
store = DataStore()
store.url = request.POST.get('url',""),
store.data = request.POST['data'],
store.save()
return {'data':store}
当我使用 curl 发布数据时,我得到以下响应正文,这是预期的:
{
"result": {
"url": [
""
],
"data": [
"somedata"
],
"id": 1
}
}
然而,出乎意料的是,当我从 django admin 查看存储的实例时,存储在数据字段中的值如下所示:
(u'somedata',)
并且以下内容存储在 url 中:
('',)
更有趣的是,当我使用 curl 查询服务以查看存储的内容时,我得到以下信息:
{
"result": {
"url": [
"('',)"
],
"data": [
"(u'somedata',)"
],
"id": 1
}
}
我很难过..有什么想法会发生什么?