рдЕрдВрддрд┐рдо рдЧрд┐рд░рд╛рд╡рдЯ, рд╣рдордиреЗ рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рд▓рд┐рдЦрд╛ -
RedsolutionCMS ред рдЧрд▓рдд рдирд╛рдо рдХреЗ рд╕рд╛рде рд╡рд┐рдХрд╛рд╕, рдХреНрдпреЛрдВрдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдХрд┐рд╕реА рднреА рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдкреНрд░рдмрдВрдзрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдореВрд▓ рдореЗрдВ, RedsolutionCMS, Django рдкрд░ рд╡реЗрдм рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рддреИрдирд╛рддреА рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдгрд╛рд▓реА рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рд╣рдорд╛рд░реЗ em рдХреЗ рд╕рднреА рд▓рд╛рднреЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд┐рдЦрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ ... RedsolutionCMS :)
рдЪреВрдВрдХрд┐ рд╣рдорд╛рд░рд╛ рд╕рд┐рд╕реНрдЯрдо рдореЙрдбреНрдпреВрд▓рд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕рдореЗрдВ рдПрдХ рдФрд░ рдореЙрдбреНрдпреВрд▓ рдЬреЛрдбрд╝ рджреЗрдВрдЧреЗред рдПрдХ рдЙрджрд╛рд╣рд░рдг django-photologue рд╣реЛрдЧрд╛ - рдХрд┐рд╕реА рд╕рд╛рдЗрдЯ рдкрд░ рдлреЛрдЯреЛ рдЧреИрд▓рд░реА рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ред Cutscene рдХреЗ рддрд╣рдд рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдХреЛ рд▓рд┐рдЦрдиреЗ рдФрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рд╣реИ (рдпрд╣ рдПрдХ рдлрд╝реЛрдЯреЛрдЧреНрд░рд╛рдлрд╝ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред
рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрджред рдпрд╣ django рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдлреЛрдЯреЛ рдЧреИрд▓рд░реА рд╣реИред рдЗрд╕рдХрд╛ рдПрдХ рд▓рд╛рдн рдпрд╣ рд╣реИ:
- рддреИрдпрд╛рд░ рдЖрд╡реЗрджрди;
- рддрд╕реНрд╡реАрд░реЛрдВ рдкрд░ рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рдХреЛ рд╕реБрдкрд░рдЗрдореНрдкреЛрдЬрд╝ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛;
- рдкреНрд░рднрд╛рд╡ рдЬреЛрдбрд╝реЗрдВ, рдЫрд╡рд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░реЗрдВ;
- рд░реЗрдбреА-рдореЗрдб рдПрдбрдорд┐рди рдкреИрдирд▓ рдФрд░ рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдкреНрд▓рд╕рд╕;
- рдлреЛрдЯреЛ рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓:
рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:
рднрд╛рдЧ 1. рдореИрдиреБрдЕрд▓ рд╕реНрдерд╛рдкрдирд╛
рдлреЛрдЯреЛрд▓реЙрдЧреВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд django_photologueрддрдм рдЖрдкрдХреЛ
рд╕реЗрдЯрд┐рдВрдЧреНрд╕ -
рдереНрд░реВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░
urls.py рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛:
INSTALLED_APPS += [
рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдЖрд░рдВрднреАрдХреГрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдлрд╝реЛрдЯреЛрд▓реЙрдЧ рдХреЛ рдЖрд░рдореНрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрди рдХрдорд╛рдВрдб рдХреЛ рдЪрд▓рд╛рдирд╛ рд╣реЛрдЧрд╛:
python manage.py plinitрдпрд╣рд╛рдВ рдЖрдкрдХреЛ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдЖрдХрд╛рд░ рдФрд░ рдЙрдирдХреЗ рдердВрдмрдиреЗрд▓ рд╕реЗрдЯ рдХрд░рдиреЗ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЗрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛ред
рднрд╛рдЧ 2. рдЗрдВрд╕реНрдЯреЙрд▓рд░ рд▓рд┐рдЦрдирд╛
рдЕрдм django-photologue рдореЙрдбреНрдпреВрд▓ рдХреЛ Redsolution CMS рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред
рдирд┐рдореНрди рдлрд╝рд╛рдЗрд▓ рдЯреНрд░реА рдмрдирд╛рдПрдБ:
django-photologue # рдпрджрд┐ рдореЙрдбреНрдпреВрд▓ (django-photologue) рдЕрднреА рддрдХ PyPI рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред
рдЪреВрдБрдХрд┐ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рдФрд░ рдмрдирд╛рдП рдЧрдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдкрд░ url рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝реЗ рдЬрд╛рдПрдВред
settings.pyt рдФрд░
urls.pyt рдлрд╛рдЗрд▓реЗрдВ рд▓рд┐рдЦреА рдЬрд╛рддреА рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдХреЛрдб рдХреА рд▓рд╛рдЗрдиреЗрдВ рд╕реАрдзреЗ рдирд┐рдХрд╛рд▓реА рдЬрд╛рддреА рд╣реИрдВ рдФрд░
settings.py рдФрд░
urls.py рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЬреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдлрд╝рд╛рдЗрд▓:
make.py:
from redsolutioncms.make import BaseMake class Make(BaseMake): def make(self): super(Make, self).make() cms_settings.render_to('settings.py', 'settings.pyt', {}) cms_settings.render_to('urls.py', 'urls.pyt', {}) make = Make()
рдЬрд╣рд╛рдБ
cms_settings.render_to (file_name, template_name, рд╢рдмреНрджрдХреЛрд╢ = рдХреЛрдИ рдирд╣реАрдВ, рдореЛрдб = 'рдП +')рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓_рдирд╛рдо рдХреЗ рдЕрдВрдд рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ
рдкреИрд░рд╛рдореАрдЯрд░:
- file_name - рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдЬреЛ рд▓рд┐рдЦрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ
- template_name - рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдкрде
- рд╢рдмреНрджрдХреЛрд╢ - рдПрдХ рдЦрд╛рдХрд╛ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢рдмреНрджрдХреЛрд╢
- рдореЛрдб - рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдореЛрдбред рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореЛрдб = 'w' рдкрд╛рд╕ рдХрд░реЗрдВ
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдКрдкрд░
рдмрддрд╛рдИ рдЧрдИ
рд╕реЗрдЯрд┐рдВрдЧред Pyt рдФрд░
urls.pyt рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд рдЬрдВрдЧ рдкреИрдЯрд░реНрди рд╣реИрдВред
рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпреЗ рдлрд╛рдЗрд▓реЗрдВ рдХрд╛рдлреА рдХрдо рд╣реЛрдВрдЧреА:
settings.pyt:
urls.pyt:
рднрд╛рдЧ 3. рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ
рд╡рд┐рд╡рд░рдг рдореЗрдВ рд╣рдо рдкреНрд▓рдЧ-рдЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВред
MANIFEST.in - рдореАрдбрд┐рдпрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓:
рдкреБрдирд░рд╛рд╡рд░реНрддреА-рд╢рд╛рдорд┐рд▓ redsolution_setup / рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ * .pytsetup.py рдПрдХ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдлрд╛рдЗрд▓ рд╣реИ рдЬреЛ рдкреИрдХреЗрдЬ, рдбреЗрд╡рд▓рдкрд░, рд▓рд╛рдЗрд╕реЗрдВрд╕, рдлрд╛рдЗрд▓ рдЖрджрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдореЗрдЯрд╛-рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдореЙрдбреНрдпреВрд▓ рдореЗрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЖрдкрдХреЛ "рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ" рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рддрд╛рдХрд┐ рдореЙрдбреНрдпреВрд▓ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕реАрдПрдордПрд╕ рд╕рдордЭреЗрдВ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдП:
setup( ... entry_points={ 'redsolutioncms': ['photologue = redsolution_setup', ], }, ... )
рдЕрдм рд╣рдо PyPI рдореЗрдВ рдкрд░рд┐рдгрд╛рдореА рдореЙрдбреНрдпреВрд▓ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ PyPI рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдкрдВрдЬреАрдХрд░рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдВ, redsolutioncms_photologue, рдФрд░ рдЯрд╛рдЗрдк рдХрд░реЗрдВ:
рдЕрдЬрдЧрд░ setup.py рд░рдЬрд┐рд╕реНрдЯрд░рдлрд┐рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╕рд╛рдЗрдЯ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ:
python setup.py sdist рдЕрдкрд▓реЛрдбрдЕрдм рджреВрд╕рд░реЗ рдкреЗрдЬ рдкрд░ Redsolution CMS рдореЗрдВ, рдЬрдм рдЖрдк рдХрд┐рд╕реА рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдлрд╝реЛрдЯреЛрд▓реЙрдЧ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдмрдзрд╛рдИ!