如何配置Tastypie将字段视为唯一?如果我尝试为标记为唯一的字段插入重复条目,我的期望是接收某种非500错误(可能是409冲突?)作为响应.
我查看了文档,看起来它应该对我来说很明显,但由于某种原因,我没有得到我期望看到的响应.
这是文档链接:
http://readthedocs.org/docs/django-tastypie/en/latest/fields.html?highlight=unique
示例代码如下:
urls.py
v1_api = Api(api_name='v1')
v1_api.register(CompanyResource())
urlpatterns = patterns('',
(r'^api/', include(v1_api.urls)),
)
Run Code Online (Sandbox Code Playgroud)
resource.py
class CompanyResource(ModelResource):
CompanyName = fields.CharField(attribute='company_name')
CompanyId = fields.CharField(attribute='company_id', unique=True)
Contact = fields.CharField(attribute='contact')
Email = fields.CharField(attribute='email')
Phone = fields.CharField(attribute='phone')
class Meta:
queryset = Company.objects.all()
authentication = BasicAuthentication()
authorization = Authorization()
allowed_methods = ['get', 'post']
Run Code Online (Sandbox Code Playgroud)
models.py
class Company(models.Model):
company_name = models.TextField(default=None, blank=True, null=True)
company_id = models.CharField(default='', unique=True, db_index=True, max_length=20)
contact = models.TextField(default=None, blank=True, null=True)
email = models.EmailField(default=None, blank=True, null=True)
phone = models.TextField(default=None, blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)
我收到的错误如下(使用curl来点击我的本地服务): …
在dotCloud上部署Node.js服务时,我看到以下错误:
23:03:59.958870: [www] npm ERR! Error: SSL Error: CERT_UNTRUSTED
23:03:59.959405: [www] npm ERR! at ClientRequest.<anonymous> (/opt/node/v0.8.3/lib/node_modules/npm/node_modules/request/main.js:440:26)
23:03:59.959736: [www] npm ERR! at ClientRequest.g (events.js:185:14)
23:03:59.960068: [www] npm ERR! at ClientRequest.EventEmitter.emit (events.js:88:17)
23:03:59.960399: [www] npm ERR! at HTTPParser.parserOnIncomingClient [as onIncoming] (http.js:1445:7)
23:03:59.968852: [www] npm ERR! at HTTPParser.parserOnHeadersComplete [as onHeadersComplete] (http.js:111:23)
23:03:59.969361: [www] npm ERR! at CleartextStream.socketOnData [as ondata] (http.js:1356:20)
23:03:59.969696: [www] npm ERR! at CleartextStream.CryptoStream._push (tls.js:396:27)
23:03:59.970028: [www] npm ERR! at SecurePair.cycle (tls.js:750:20)
23:03:59.970359: [www] npm ERR! at EncryptedStream.CryptoStream.write (tls.js:131:13)
23:03:59.970694: [www] …Run Code Online (Sandbox Code Playgroud)