def prepare_changes_data(self, cleaned_data): data = cleaned_data.copy() # Convert model instances to IDs for JSON serialization if data.get("owner"): data["owner"] = data["owner"].id # Convert dates to ISO format strings if data.get("opening_date"): data["opening_date"] = data["opening_date"].isoformat() if data.get("closing_date"): data["closing_date"] = data["closing_date"].isoformat() # Convert Decimal fields to strings decimal_fields = ["latitude", "longitude", "size_acres", "average_rating"] for field in decimal_fields: if data.get(field): data[field] = str(data[field]) return data