DeliveryDataに保存したい
了解しました。まず、エリア情報を含むarea_dataをインポートし、そのデータを元にShippingAreaモデルのインスタンスを作成し、保存します。その後、DeliveryDataモデルのインスタンスを作成し、それぞれのレコードにエリア情報を関連付けて保存します。
以下は、具体的なコード例です:
python
from your_app.models import ShippingArea, DeliveryData import pandas as pd # エリア情報をインポート area_data = { 'エリア': ['関東', '四国', '九州', '信越', '関西', '関西', '北海道', '九州', '関東', '関東', '九州', '関西', '北陸', '関東', '信越', '中国', '関東', '北東北', '関東', '中部', '関西', '九州', '関東', '九州', '北東北', '北東北', '関西', '九州', '中国', '中部', '中部', '関東', '南東北', '四国', '九州', '四国', '中国', '四国', '中国', '信越', '北陸', '北陸', '北東北', '北東北', '中国', '関西', '沖縄'], '都道府県': ['東京都', '徳島県', '鹿児島県', '静岡県', '兵庫県', '奈良県', '北海道', '佐賀県', '神奈川県', '茨城県', '福岡県', '大阪府', '石川県', '埼玉県', '長野県', '広島県', '山梨県', '山形県', '千葉県', '岐阜県', '滋賀県', '熊本県', '群馬県', '大分県', '青森県', '福島県', '京都府', '宮崎県', '山口県', '三重県', '愛知県', '栃木県', '宮城県', '愛媛県', '長崎県', '高知県', '島根県', '香川県', '岡山県', '新潟県', '富山県', '福井県', '岩手県', '秋田県', '鳥取県', '和歌山県', '沖縄県'] } # ShippingAreaモデルのインスタンスを作成して保存 for area_name, prefecture_name in zip(area_data['エリア'], area_data['都道府県']): area_instance = ShippingArea.objects.create(name=area_name, prefecture=prefecture_name) # 配送データを読み込む delivery_data_df = pd.read_csv('your_delivery_data.csv', encoding='shift-jis') # DeliveryDataモデルのインスタンスを作成して保存 for index, row in delivery_data_df.iterrows(): area_instance = ShippingArea.objects.get(prefecture=row['扱店都道府県']) delivery_instance = DeliveryData.objects.create( shop_code=row['店所コード'], customer_code=row['お客様コード'], classification_code=row['分類コード'], reception_date=row['受付日'], original_number=row['原票No.'], product_type1=row['商品区分1'], product_type2=row['商品区分2'], size=row['サイズ'], quantity=row['個数'], handling_shop_prefecture=row['扱店都道府県'], handling_shop_city=row['扱店市区町村'], shipping_charge=row['運賃'], advance_payment=row['立替金'], insurance_fee=row['保険料'], total_shipping_charge_excluding_tax=row['運賃等合計(税別)'], consumption_tax=row['消費税'], total_shipping_charge_including_tax=row['運賃等合計(税込)'], reduced_tax_rate_target=row['軽減税率対象'], area=area_instance )
このコードでは、CSVファイルから配送データを読み込み、それを元にDeliveryDataモデルのインスタンスを作成しています。また、各配送データに関連するエリア情報をShippingAreaモデルから取得して関連付けています。

ディスカッション
コメント一覧
まだ、コメントがありません