An even more hacky solution . You can do the following in module level code after Clientclass:
class Client(models.Model):
...
client = models.ForeignKey(Client, related_name='tickets')
client.contribute_to_class(Ticket, name='client')
I did not test it completely (I did not do any real database migrations), but the correct descriptors were added to the class ( ReverseSingleRelatedObjectDescriptorfor Ticketand ForeignRelatedObjectsDescriptorfor Client); South recognizes new fields. So far, it works as usual ForeignKey.
: . Django . , , . , - . , , . , , - .