рдореИрдВрдиреЗ django-рдЕрднрд┐рднрд╛рд╡рдХ рдХреЗ рд╕рд╛рде django-polymorphic рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрдИ рдЪрд░реНрдЪрд╛рдПрдВ рджреЗрдЦреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рднреНрд░рдорд┐рдд рд╣реИред
рдЗрд╕ рдорд╛рдорд▓реЗ рдХреА рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП:
class FeedPost(PolymorphicModel):
class Meta:
default_permissions = ('add', 'change', 'delete', 'view')
class ArticleFeedPost(FeedPost):
class Meta:
default_permissions = ('add', 'change', 'delete', 'view')
django-guardian 1.4.6 рдХреЗ рд╕рд╛рде, рдЬрдм рдЖрдк ArticleFeedPost рдкрд░ рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпреЗ рдЕрдиреБрдорддрд┐рдпрд╛рдБ FeedPost рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВред
рдбреЙрдХреНрдЯрд░ рдореЗрдВ, рдпрд╣ рдмрд╣реБрд░реВрдкреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ:
http://django-guardian.readthedocs.io/en/stable/configuration.html?highlight=polymorph#guardian -get-content-type
рд▓реЗрдХрд┐рди get_default_content_type рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рдЙрджрд╛рд╣рд░рдг рдирд╣реАрдВ рд╣реИред
рдореЗрд░реЗ рдкреНрд░рд╢реНрди рд╣реИрдВ (рд╡реИрд╕реЗ, рдореБрдЭреЗ рдЗрди рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдпрд╣рд╛рдВ рдкреВрдЫрдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ рдХрд╣реАрдВ рдФрд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдпрд╣рд╛рдВ рдЙрддреНрддрд░ рджреЗрдиреЗ рдХрд╛ рдмреЗрд╣рддрд░ рдореМрдХрд╛ рд╣реИ):
рдирдорд╕реНрддреЗ,
рдпрд╣ рдПрдХ django-рдмрд╣реБрд░реВрдкреА рдореБрджреНрджрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИред django-polymorphic
рдореЗрдВ django-guardian рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ django-polymorphic рдбреЙрдХреНрд╕ рджреЗрдЦреЗрдВред
рдЕрднрд┐рд╡рд╛рджрди,
рд╕реАрд╕реА: @benkonrath
рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдореБрджреНрджреЛрдВ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдпрд╣ рдШреЛрд╖рдгрд╛ рдХрд░рддреЗ рд╣реБрдП рдкреНрд░рд╕рдиреНрдирддрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рдХрд┐ рдпрд╣ рдзреНрдпрд╛рди рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИред рдЕрдЧрд▓реЗ рд░рд┐рд▓реАрдЬ рдореЗрдВ рд╕рд╣реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред GUARDIAN_GET_CONTENT_TYPE
django 1.4.6 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
@BenDevelopment рдмреЗрд╕ рдореЙрдбрд▓ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдХрд╛рд░ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд╛рд▓ рд╣реА рдореЗрдВ django-polymorphic рдореЗрдВ рд╡рд┐рд▓рдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЖрдзрд╛рд░ рдореЙрдбрд▓ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЕрднрд┐рднрд╛рд╡рдХ рдЕрдиреБрдорддрд┐рдпрд╛рдВ рдЖрдзрд╛рд░ рдореЙрдбрд▓ рдкрд░ рдХрд╛рдо рдХрд░реЗрдВрдЧреАред рдпрджрд┐ рдЖрдк django-guardian рдХреЗ рдирд╡реАрдирддрдо рд░рд┐рд▓реАрдЬрд╝ рдХрд┐рдП рдЧрдП рд╕рдВрд╕реНрдХрд░рдг рдФрд░ git рд╕реЗ django-polymorphic рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдмрд╕ рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
GUARDIAN_GET_CONTENT_TYPE = 'polymorphic.contrib.get_polymorphic_base_content_type'
рдпрджрд┐ рдЖрдк django-polymorphic рдХреЗ рдирд╡реАрдирддрдо git рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк get_polymorphic_base_content_type
рдХреЛрдб рдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЙрдкреА рдФрд░ рдкреЗрд╕реНрдЯ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣рд╛рдВ рдЕрдкреНрд░рдХрд╛рд╢рд┐рдд рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╣реИрдВ:
https://django-polymorphic.readthedocs.io/en/latest/third-party.html#django -guardian-support
@ рдмреЗрди рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рд╕реБрдзрд╛рд░, рд╕реЗрдЯрд┐рдВрдЧ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП:
GUARDIAN_GET_CONTENT_TYPE = 'polymorphic.contrib.guardian.get_polymorphic_base_content_type'
рдореИрдВ рдбреЙрдХреНрд╕ рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЙрд▓рд┐рдореЙрд░реНрдлрд┐рдХ рдХреЛ рдкреАрдЖрд░ рдмрдирд╛рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред
рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдзрдиреНрдпрд╡рд╛рдж! рд╕рдм рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ !