1
バックエンドにDjango、フロントエンドにReactを使用して長方形を描画しようとしています。 JSON形式の4つの座標点(x、y)で第三者がAPIをヒットし、Reactを使用して線を描画します。Django:長方形をモデル化する方法は?
class Rectangle(models.Model):
name = models.CharField(max_length=10)
def __str__(self):
return self.name
class Point(models.Model):
rectangle = models.ForeignKey(Rectangle, on_delete = models.CASCADE)
x1 = models.FloatField()
y1 = models.FloatField()
def __str__(self):
return '{} , {}'.format(self.x1, self.y1, self.x2, self.y2)
:私は8つのフィールド{(X1、Y1)、(X2、Y2)、(X3、Y3)、(X4、Y4)}または私はのような2つのモデルを維持する必要がありますと四角形という名前の単一のモデルを維持する必要があります
2つのモデルを保持すると、シリアライザとクラスベースのビューを作成して、提供されたデータを処理すると少し複雑になります。私は何をすべきか?助言がありますか?
モデルには常に4点があると確信しているなら、4点の座標を含む1つのモデルを使うことをお勧めします。ポイントモデルをFKを介して形状モデルに接続する方法は、あなたが必要とするだけのポイントを簡単に持つことができるので、クールです。 –
ポイントデータをどうにかインデックス化しますか?または空間的なクエリを実行しますか?そうでない場合は、すべてをJSONデータとして単純に保存できます。個々のテーブルにポイントを格納するIMHOはオーバーヘッドです。 –
あなたの提案をありがとう.. –