0

Django でアプリケーションの API を作成するために Piston を使用しています。

私の疑問を簡単な方法で説明しようと思います。2 つのモデルがあるとします。

class Device(models.Model):
    id = models.TextField(...)

class Person(models.Model):
    name = models.TextField(...)
    device = models.ForeigKey(Device)

今、次のような URL を受け取った場合:

(r'^api/(?P<person_name>\w+)/(?P<device_id>\w+)$',handler),

DB に人を追加したいのですが、そのためには新しいデバイスを DB に追加する必要がありますが、Piston のハンドラーはモデルにリンクされているため、同じ方法でデバイスを DB に追加するにはどうすればよいですか?ハンドラ?

私はこのようなことを試しました:

class PersonHandler(BaseHandler):
    allowed_methods= ('PUT')
    model = Person

    def create(self, request, person_name, device_id):
        Device.objects.create(id=device_id)
        d = Device.objets.get(id=device_id)
        Person.objects.create(name=person_name,device=d)
        return rc.CREATED

でもきっとうまくいかない。

やりたいことはどうすればいいの?

4

0 に答える 0