0
私はループを使ってある種の方法でモデルに値を設定する母集団スクリプトを作ろうとしています。ここでは、コードがどのように見えるかです:ループを使ってDjangoにモデルを移植する
models.py
class ExampleModel(models.Model):
name = models.CharField(max_length=32)
code = models.CharField(max_length=3)
description = models.TextField(max_length=128)
TEXT.TXT
001 Name One
Description one
Description one line two
023 Name Two
Description two
Description two line two
Description two line three
AAA Name Three
BBB Name Four
Description three
今populate.py
def populate():
with open("text.txt") as f:
content = f.readlines()
for line in content:
fields = line.split(' ', 1)
if len(fields[0]) == 3 and (fields[0].strip().isupper() or fields[0].strip().isdigit()):
code = fields[0].strip()
name = fields[1].strip()
print("%s-%s" % (code, name))
add_object(name=name, code=code)
def add_object(name, code, periship_amount):
f = ExampleModel.objects.get_or_create(name=name, code=code)[0]
return f
if __name__ == '__main__':
populate()
、人口スクリプトことができます3文字の文字列で始まる行をすべて2行に分け、3文字の文字列をコードに変換します。残りの文字列を名前に追加します。私がしたいのは、テキスト全体(その中に記述があるもの)を1つのコード名の行の下に置き、上のコード名の記述フィールドに等しくすることです。誰もpopulate.pyでそのループを書く方法を知っていますか?ありがとうございました。