38 lines
1.0 KiB
Python
38 lines
1.0 KiB
Python
from pprint import pprint
|
||
|
||
from account.models import User
|
||
from establishment.models import Establishment
|
||
from transfer.models import Comments
|
||
from transfer.serializers.comments import CommentSerializer
|
||
|
||
|
||
def transfer_comments():
|
||
# В queryset исключены объекты по условию в связанные моделях
|
||
# см. transfer_establishment() и transfer_user()
|
||
establishments = Establishment.objects.all().values_list('old_id', flat=True)
|
||
users = User.objects.all().values_list('old_id', flat=True)
|
||
queryset = Comments.objects.filter(
|
||
establishment_id__in=list(establishments),
|
||
account_id__in=list(users),
|
||
).only(
|
||
'id',
|
||
'comment',
|
||
'mark',
|
||
'establishment_id',
|
||
'account_id',
|
||
'state',
|
||
)
|
||
|
||
serialized_data = CommentSerializer(data=list(queryset.values()), many=True)
|
||
if serialized_data.is_valid():
|
||
serialized_data.save()
|
||
else:
|
||
pprint(serialized_data.errors)
|
||
|
||
|
||
data_types = {
|
||
'comment': [
|
||
transfer_comments
|
||
]
|
||
}
|