私はREST API Django-pistonからデータベースに新しい値を挿入しようとしています。django-piston追加値外部キー
私がフォローモデル
class Mobile_User(models.Model):
id = models.CharField(primary_key=True, max_length=255, unique=True)
email = models.EmailField()
name = models.CharField(max_length=300)
def __unicode__(self):
return u"%s - %s" % (self.id, self.email)
class Mobile_User_Business(models.Model):
mobile_user_id = models.ForeignKey(Mobile_User)
business_id = models.ForeignKey(Business)
def __unicode__(self):
return u"%s - %s" % (self.business_id, self.mobile_user_id)
とhandlers.py
def create(self, request):
"""
Creates a new Mobile_User.
"""
if not hasattr(request, "data"):
request.data = request.POST
attrs = self.flatten_dict(request.data)
if self.exists(**attrs):
msj = "The user mobile already exist"
return msj
else:
mobile_user_business = Mobile_User_Business(mobile_user_id=attrs['mobile_user_id'],
business_id=attrs['business_id'],)
mobile_user_business.save()
return mobile_user_business
を持つための情報を送信する:「12345 -X POST -d mobile_user_id =:
カール-u MYUSERを21221212 "-d business_id =" 1 "http://mydomain.com/api/newuser/
これは、返信先:
トレースバック(最後の最新の呼び出し):
ファイル "/dir/www/djangotest/apps/api/handlers.py"、ライン122、中 business_id = attrsに[ 'business_id' を作成]、)INIT SETATTRに
ファイル "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py"、ライン352、(自己、field.name 、rel_obj)
ファイル "/usr/local/lib/python2.7/dist-packag ES /ジャンゴ/ DB /モデル/フィールド/ related.py」、行331、に self.field.name、self.field.rel.to._meta.object_name)を設定)
とValueError:割り当てることができません"u'21221212 '": "Mobile_User_Business.mobile_user_id"は "Mobile_User"インスタンスである必要があります。
ありがとうございます!
優秀!ありがとう! – LaBE