рд╣рд╛рд▓ рд╣реА рдореЗрдВ
рдЖрдИрдлреЛрдХрд▓ рдпреВрдЬрд░ рдиреЗ
рдкрд╛рдЗрдерди рдмрдирд╛рдо рд░реВрдмреА рд▓реЗрдЦ рд▓рд┐рдЦрд╛ред
рдиреЛрдмрд▓ рд╣реЛрд▓реАрд╡рд░ рдирд┐рдХрд▓рд╛ред рдореИрдВ рдорджрдж рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдореИрдВрдиреЗ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЛрдЪрд╛ рдерд╛ - рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ рдмрд╣реБрдд рд╣реА рд╕реНрдкрд╖реНрдЯ рдерд╛ред
рдореЗрд░реЗ рдмрд╛рд░реЗ рдореЗрдВ:
рдореИрдВ рдкрд╛рдпрдерди рдореЗрдВ рджрд╕ рд╕рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдореИрдВ рд░реВрдмреА рдХреЛ рдХрд╛рдлреА рд╕рддрд╣реА рд░реВрдк рд╕реЗ рдЬрд╛рдирддрд╛ рд╣реВрдВред
рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдореИрдВ рдкреНрд░рддрд┐рдмрджреНрдз рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдкрд╛рдпрдерди рдХреЛрд░ рдбреЗрд╡рд▓рдкрд░ рд╣реВрдВред
рд╕рд╛рдВрддрд╛ рдХреНрд▓рд╛рд░рд╛ рдореЗрдВ рдЕрдВрддрд┐рдо рдпреВрдПрд╕ рдкрд╛рдпрдХреЛрди рдкрд░, рдЧреБрдЗрдбреЛ рд╡реИрди рд░реЛрд╕реБрдо рдиреЗ рдПрдХ рдЕрджреНрднреБрдд рднрд╛рд╖рдг рджрд┐рдпрд╛ - рдореИрдВ рд╕рднреА рдХреЛ рджреЗрдЦрдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред
рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЙрдиреНрд╣реЛрдВрдиреЗ рдмрддрд╛рдпрд╛ рдХрд┐ рдкрд╛рдпрдерди рдФрд░ рд░реВрдмреА рд▓рдЧрднрдЧ рдЬреБрдбрд╝рд╡рд╛рдВ рднрд╛рдИ рд╣реИрдВред рдЙрдирдХреЗ рдмреАрдЪ рдХреЗ рдЕрдВрддрд░ рдЗрди рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╡рд┐рд░реЛрдз рд╕реЗ рдмрд╣реБрдд рдХрдо рд╣реИрдВ, рдЕрдиреНрдп рд╕рднреА рдХреЗ рд▓рд┐рдПред
рдЪрд▓реЛ рджреЛрд╕реНрдд рд╣реИрдВ, рдкрддрд╛ рдирд╣реАрдВ рдХреМрди рдХреВрд▓рд░ рд╣реИред
рдЕрдм рд▓реЗрдЦрдХ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рджрд╛рд╡реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ (рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдкрд╛рдпрдерди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ - рдХрд┐рд╕реА рдЬрд╛рдирдХрд╛рд░ рдХреЛ рдПрдХ рднрд╛рд░рд┐рдд рд╢рдмреНрдж рднреА рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП)ред
- рдкрд╛рдпрдерди рдореЗрдВ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдПрд╕рдПрд╕рдПрд▓ рдореЙрдбреНрдпреВрд▓ рд╣реИред Microsoft рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдЪреАрди рд▓рд╛рдЗрд╕реЗрдВрд╕ рдкреНрд░рд╛рдкреНрдд рд╕реНрдХреНрд╡реИрдмрд▓реНрд╕ рдХреЗ рдХрд╛рд░рдг (рд╕рд╣реА рд╣реИ, рдпрджрд┐ рдирд╣реАрдВ) рдпрд╣ рдореЙрдбреНрдпреВрд▓ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рд╡рд┐рддрд░рдг рдкреИрдХреЗрдЬ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рдЕрдиреНрдп рд╕рднреА рдУрдПрд╕ рдкрд░ рдпрд╣ рд╣реИред
- рдЙрдкрдкреНрд░рдХрд╛рд░ рдЖрдкрдХреЛ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдПрдХ рдкрдВрдХреНрддрд┐ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдкреИрд░рд╛рдореАрдЯрд░ рд╢реЗрд▓ = рдЯреНрд░реВ рдХреЗ рд╕рд╛рде рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдХреЗрд╡рд▓ рдХреЛрд╖реНрдардХ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╣реАрдВ рд╣реИ - рд▓реЗрдХрд┐рди рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд╕рдордЭрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкрд╛рда рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдПрдХ рдЪрд░ рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рдПрдХ рд╕рдмрдкреНрд░реЛрд╕реЗрд╕ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдХрдо рдХрд░ рджреЗрддрд╛ рд╣реИред рд░рд┐рдЯрд░реНрди рдХреЛрдб, рд╕реНрдЯреЗрдбрд░, рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡рд┐рдЯреА рднреА рд╣реИ ...
- рдЕрдЬрдЧрд░ рдПрдХ рд╕рд╛рдкреЗрдХреНрд╖ рддрд░реАрдХреЗ рд╕реЗ рдореЙрдбреНрдпреВрд▓ рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдкрде рд╣реИред рдореЙрдбреНрдпреВрд▓ рдкреИрдХреЗрдЬ (рдлрд╝реЛрд▓реНрдбрд░ рдЬрд┐рд╕рдореЗрдВ __init__.py рд╣реЛрддреЗ рд╣реИрдВ) рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдкрд╛рдардХ рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдкрд╣рд▓реЗ рд╣реА рдмрддрд╛ рдЪреБрдХреЗ рд╣реИрдВред
- codecs.open рдЖрдк рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЦреБрд▓реЗ рдПрдХ рд╣реА рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
- рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдереНрд░реЗрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдереНрд░реЗрдб рдХреЛ рдирд╖реНрдЯ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рд╣рдореЗрд╢рд╛ рдПрдХ рдЬреЛрдЦрд┐рдо рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдореБрдХреНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рдореЗрдореЛрд░реА, рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрд╢рди рдФрд░ рдЕрдиреНрдп рд╕реЙрдХреЗрдЯ, рдЖрджрд┐) рдЗрд╕рд▓рд┐рдП, рдкрд╛рдпрдерди рдХреЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХреЛрдИ рдЕрд╡рд╕рд░ рдирд╣реАрдВ рд╣реИред рдПрдХ рддрд░рд╣ рд╕реЗ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдХреЛ рдзрд╛рд░рд╛ рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╢ рднреЗрдЬрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдФрд░ рд╡рд╣рд╛рдВ рд╡рд╣ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рд╣реИред
рдЕрдиреНрдп: рдЬреИрд╕рд╛ рдХрд┐ рдкрд╛рдардХреЛрдВ рдиреЗ рдкрд╣рд▓реЗ рд╣реА рдиреЛрдЯ рдХрд┐рдпрд╛ рд╣реИ, рдХреБрдЫ рднрд╛рдЧ рдкрд╛рдпрдерди рд╡рд┐рддрд░рдг рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред
- рдкрд╛рдЗрддреНрдЬрд╝ред рдирдИ рдкрд╛рдпрдерди рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдордЬрд╝реЛрди рд╕реВрдЪреА рдХреЛ рдбреЗрдврд╝ рд╕рд╛рд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдмрд╛рд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ pytz рдХрд╛ рдХреЛрдИ рд▓рд┐рдВрдХ рдирд╣реАрдВ рд╣реИ - рдЗрд╕реЗ рдареАрдХ рдХрд░реЗрдВред
- рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрдиред рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрдбрд╝рд╛ред рдЯреЗрдордкреНрд▓реЗрдЯ рдорд╛рдирдХ рдкреИрдХреЗрдЬ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рд╕рднреА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реЛрдЧрд╛ред jinja2 рдЬреЛ рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рд╡рд╣ рдПрдХ рдорд╣рд╛рди рдЪреАрдЬ рд╣реИред рдПрдХ рд╡рд┐рддрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЬрдЧрд░ рдХреЗ рдЕрдВрдЧ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдмрд╣реБрдд рддреЗрдЬрд╝ рдФрд░ рдмрд╣реБрдд рд╕реНрд╡рддрдВрддреНрд░ред
рдмрд╣реБрдд рд╕рд╛рд░реА рдЙрдкрдпреЛрдЧреА рдЪреАрдЬреЗрдВ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╕реНрдЯреИрдВрдбрд░реНрдб рдкрд╛рдпрдерди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд┐рдЫрдбрд╝реА рдЕрдиреБрдХреВрд▓рддрд╛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЕрдХреНрд╕рд░ рдпрд╣ рдмрд╣реБрдд рдорд╣рдВрдЧрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЬрд▓реНрджреА рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рд╣рд░ рддреАрди рдорд╣реАрдиреЗ рдореЗрдВ рд░рд┐рд▓реАрдЬрд╝ рдЬрд╛рд░реА рдХрд░рддрд╛ рд╣реИ рдФрд░ рдбреЗрдврд╝ рд╕рд╛рд▓ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдирд╣реАрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдкрд╛рдпрдерди рдХрд░рддрд╛ рд╣реИред
рдФрд░ рдЕрдВрдд рдореЗрдВ, рдореБрдЦреНрдп рдмрд╛рддред
python2 рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореГрдд рд╣реИред рд╣рд╛рдВ, рд╣рдо рдЕрдХреНрд╕рд░ рдмрдЧ-рдлрд┐рдХреНрд╕ рдХрд░рддреЗ рд╣реИрдВред python2.7.3 рдЬрд▓реНрдж рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рджреЛ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рджреЛрдиреЛрдВ рдЦрддреНрдо рд╣реЛ рдЧрдПред
рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЯреНрд░реЛрдЗрдХрд╛ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рд╕рдорд░реНрдерди рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
- SQLAlchemy рдиреЗ рдпрд╣ рдПрдХ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐рдпрд╛ рд╣реИред
- рдЬрд┐рдВрдЧрд╛ 2 рднреАред
- рдкрд┐рд░рд╛рдорд┐рдб - рдПрдХ рд╣рдлреНрддреЗ рдкрд╣рд▓реЗред
- WebOb рдХрд┐ рдкрд┐рд░рд╛рдорд┐рдб рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ рдирд┐рд░реНрднрд░ рдерд╛ред
- Django рднреА рд╢реАрд░реНрд╖ рддреАрди рдХреЗ рд▓рд┐рдП рдХрджрдо рд╣реЛрдЧрд╛ - рдЙрдиреНрд╣реЛрдВрдиреЗ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛ рдерд╛ред
рджреЛрд╕реНрддреЛрдВ, Python3 рдЖрдкрдХрд╛ рднрд╡рд┐рд╖реНрдп рд╣реИ рдЬреЛ рдЖрдкрдХреА рдПрдбрд╝реА рдкрд░ рдЖрддрд╛ рд╣реИред рддреИрдпрд╛рд░ рд╣реЛ рдЬрд╛рдУ!
UPD: рдкрддрди рдореЗрдВ рд░рд┐рд▓реАрдЬрд╝ рд╣реЛрдиреЗ рд╡рд╛рд▓реА Django 1.5, рдкрд╛рдпрдерди 3.3 рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╕рдорд░реНрдерди рдХрд░реЗрдЧреА