そこで、不動産アプリから作成した新しい「リスト」アプリに「リスト」を取得するデータ移行を試みています。
私はこのように移行を開始しました:
python manage.py startmigration listings migrate_listings --freeze realestate
空の移行を作成しました。これに次のデータを入力しました。
def forwards(self, orm):
"Write your forwards migration here"
for listing in orm['realestate.RealEstateListing'].objects.all():
sub_type = orm.SubType.objects.get(slug_url=slugify(listing.listing_type.name))
lt = orm.Listing(listing_type=sub_type.parent,
sub_type=sub_type,
expiration_date=listing.expiration_date,
title=listing.title,
slug_url = listing.slug_url,
description = listing.description,
contact_person=listing.contact_person,
secondary_contact=listing.secondary_contact,
address=listing.address,
location=listing.location,
price=listing.price,
pricing_option=listing.pricing_option,
display_picture=listing.display_picture,
image_gallery=listing.image_gallery,
date_added=listing.date_added,
status=listing.status,
featured_on_homepage=listing.featured_on_homepage,
)
lt.save()
lt.features.clear()
for ft in listing.property_features.all:
lt.features.add(ft)
for cft in listing.community_features.all:
lt.features.add(cft)
lt.restrictions.clear()
for na in listing.not_allowed.all:
lt.restrictions.add(na)
ただし、移行を実行すると、まだこのエラーが発生します。
whiney_method
ValueError("スタブ モデルをインスタンス化できません")
私が理解していることから、fakeorm を使用して「スタブ」モデルにアクセスすることはできませんが、追加のアプリを凍結することは許可されていません。「スタブ」モデルをフリーズせずに使用するにはどうすればよいですか?