SlideShare a Scribd company logo
Pycon
‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
– ‫صدرنژاد‬ ‫سیدمحمدمسعود‬۲۴‫اردیبهشت‬۱۳۹۵
) ‫پایتون‬ ‫کنفرانس‬ ‫سومین‬PyCon‫ایران‬ ‫صنعت‬ ‫و‬ ‫علم‬ ‫دانشگاه‬ – ‫تهران‬ ‫در‬ (
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
2
‫مطالب‬ ‫فهرست‬
۱‫مزانین‬ ‫معرفی‬ .
۲.‫مزانین‬ ‫از‬ ‫استفاده‬ ‫دلیل‬
۳‫مزانین‬ ‫از‬ ‫استفاده‬ ‫و‬ ‫نصب‬ .
۴‫مزانین‬ ‫توسعه‬ .
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
3
) ‫مزانین‬ ‫معرفی‬۱(
) ‫محتوا‬ ‫مدیریت‬ ‫های‬‫سیستم‬CMS(
‫برای‬ ‫کاربری‬ ‫رابط‬ ‫ارائه‬
•‫دیجیتال‬ ‫محتوای‬ ‫نمایش‬ ‫و‬ ‫ویرایش‬ ،‫ایجاد‬
•‫همزمان‬ ‫صورت‬ ‫به‬ ‫کاربر‬‫چند‬ ‫توسط‬ ‫محتوا‬ ‫مدیریت‬
‫اصلی‬ ‫اجزاء‬
•) ‫محتوا‬ ‫مدیریت‬ ‫اپلیکیشن‬CMA(
•) ‫محتوا‬ ‫تحویل‬ ‫اپلیکیشن‬CDA(
‫به‬ ‫نسبت‬ ‫کمتر‬ ‫انعطاف‬Framework‫ها‬
‫نویسی‬‫برنامه‬ ‫دانش‬ ‫به‬ ‫کمتر‬‫نیاز‬ ‫و‬ ‫گرافیکی‬ ‫رابط‬ ‫واسطه‬ ‫به‬ ‫سادگی‬
‫فریمورک‬Django
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
4
) ‫مزانین‬ ‫معرفی‬۲(
‫مجوز‬BSD
‫مزانین‬ ‫از‬ ‫استفاده‬ ‫دلیل‬
‫پذیر‬‫گسترش‬ ‫معماری‬
‫ماژول‬ ‫نصب‬ ‫به‬ ‫نیاز‬ ‫بدون‬ ‫امکانات‬ ‫از‬ ‫بسیاری‬ ‫ارائه‬
) ‫ابتدا‬ ‫از‬ ‫سایت‬ ‫ایجاد‬ ‫امکان‬from scratch(
(‫)هک‬ ‫کد‬ ‫در‬ ‫مستقیم‬ ‫دستکاری‬ ‫برای‬ ‫بال‬ ‫پذیری‬‫انعطاف‬
) ‫فعال‬ ‫کاربری‬ ‫جامعه‬drum.jupo.org(
:‫رسمی‬ ‫وبسایت‬http://mezzanine.jupo.org
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
5
) ‫مزانین‬ ‫معرفی‬۳(
‫مزانین‬ ‫با‬ ‫کار‬ ‫برای‬ ‫لزم‬ ‫دانش‬
‫نویسی‬‫برنامه‬ ‫های‬‫زبان‬
•‫حداقلی‬ ‫دانش‬HTML‫و‬CSS
•‫برای‬ ‫پایتون‬extend‫ها‬‫اپ‬ ‫و‬ ‫ها‬‫تایپ‬ ‫کردن‬
‫جنگو‬ ‫فریمورک‬ ‫اصلی‬ ‫های‬‫مولفه‬
•model , view, template,urlpattern, admin
‫عمومی‬ ‫دانش‬
•‫توسعه‬ ‫محیط‬ ‫تنظیم‬
•‫کنترل‬ ‫ورژن‬ ‫با‬ ‫کار‬
•‫پایتون‬ ‫های‬‫پکیج‬ ‫نصب‬
•‫سرور‬‫وب‬ ‫تنظیم‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
6
“‫مزانین‬ ‫درباره‬ ‫”نظرات‬
 “Mezzanine looks pretty interesting, tempting to get me
off Wordpress.”
— Jesse Noller, Python core contributor, Python
Software Foundation board member
 “Mezzanine looks like it may be Django's killer app.”
— Antonio Rodriguez, ex CTO of Hewlett Packard
 “I'm enjoying working with Mezzanine, it's good work.”
— Van Lindberg, Python Software Foundation chairman
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
7
) ‫مزانین‬ ‫معرفی‬۴(
‫کاربران‬ ‫برای‬ ‫مزانین‬ ‫امکانات‬
) ‫مراتبی‬ ‫سلسله‬ ‫صورت‬ ‫به‬ ‫صفحات‬ ‫مدیریت‬page navigation(
‫وبلگ‬ ‫های‬‫پست‬ ‫مدیریت‬
•‫نمایش‬‫پیش‬ ‫و‬ ‫پیشنویس‬ ،‫انتشار‬ ‫زمان‬ ‫کردن‬ ‫مشخص‬ ،‫ویرایش‬ ،‫ایجاد‬
‫صورت‬ ‫به‬ ‫ویرایش‬WYSIWYG
‫صورت‬ ‫به‬ ‫صفحات‬ ‫کردن‬ ‫مرتب‬Drag  Drop
‫سایت‬ ‫اند‬‫فرانت‬ ‫بخش‬ ‫در‬ ‫مطالب‬ ‫مستقیم‬ ‫ویرایش‬
‫صورت‬ ‫به‬ ‫صورت‬ ‫به‬ ‫ساز‬‫فرم‬Drag  Drop‫خروجی‬ ‫با‬CSV
URL‫سئوفرندلی‬ ‫های‬
‫افزونه‬ ‫)با‬ ‫ساز‬‫فروشگاه‬Cartridge(
‫و‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
8
) ‫مزانین‬ ‫معرفی‬۵(
‫داشبورد‬ ‫های‬‫ویجت‬ ‫مدیریت‬
‫بلگ‬ ‫ساخت‬
‫مطالب‬ ‫به‬ ‫زدن‬ ‫تگ‬
‫متنوع‬ ‫پولی‬ ‫و‬ ‫رایگان‬ ‫های‬‫قالب‬
‫ایمیل‬ ‫تأیید‬ ‫قابلیت‬ ‫با‬ ‫ها‬‫پروفایل‬ ‫و‬ ‫کاربری‬ ‫های‬‫حساب‬ ‫مدیریت‬
‫به‬ ‫شده‬ ‫ترجمه‬۳۵‫زبان‬
‫اجتماعی‬ ‫های‬‫شبکه‬ ‫در‬ ‫محتوا‬ ‫گذاری‬‫اشتراک‬ ‫به‬
‫چندزبانه‬ ‫های‬‫سایت‬ ‫ایجاد‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
9
) ‫مزانین‬ ‫معرفی‬۶(
‫ها‬‫دهنده‬‫توسعه‬ ‫برای‬ ‫مزانین‬ ‫امکانات‬
‫از‬ ‫استفاده‬template‫های‬html‫صفحات‬ ‫برای‬ ‫متفاوت‬
‫با‬ ‫یکپارچگی‬Twitter Bootstrap
API‫ها‬‫مدل‬ ‫در‬ ‫داده‬ ‫جدید‬ ‫انواع‬ ‫با‬ ‫کار‬ ‫برای‬
‫و‬ ‫جستجو‬ ‫موتور‬API
‫با‬ ‫سازی‬‫یکپارچه‬ ‫امکان‬App‫جنگو‬ ‫برای‬ ‫موجود‬ ‫های‬
) ‫مهاجرت‬ ‫سهولت‬migration‫دیگر‬ ‫سازهای‬‫وبلگ‬ ‫از‬ (
) ‫برنامه‬ ‫خودکار‬‫استقرار‬automatic deployment(
‫با‬ ‫یکپارچه‬Disqus‫سیستم‬ ‫یا‬built-in‫تودرتو‬ ‫نظرات‬ ‫برای‬
‫و‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
10
) ‫مزانین‬ ‫معرفی‬۷(
‫با‬ ‫یکپارچه‬Gravatar
‫با‬ ‫یکپارچه‬Google Analytics
‫با‬ ‫یکپارچه‬Twitter feed
‫با‬ ‫یکپارچه‬bit.ly
‫با‬ ‫یکپارچه‬Askismet
‫ایجاد‬test suit(‫توسعه‬ ‫حال‬ ‫)در‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
11
‫مزانین‬ ‫های‬‫قالب‬
mezzathe.me
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
12
‫مزانین‬ ‫های‬‫پکیج‬
djangopackages.com/grids/g/mezzanine
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
13
) ‫مزانین‬ ‫با‬ ‫شده‬ ‫ایجاد‬ ‫های‬‫سایت‬ ‫از‬ ‫برخی‬۱(
ssc.ce.sharif.edu
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
14
) ‫مزانین‬ ‫با‬ ‫شده‬ ‫ایجاد‬ ‫های‬‫سایت‬ ‫از‬ ‫برخی‬۲(
aichallenge.sharif.edu
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
15
) ‫مزانین‬ ‫با‬ ‫شده‬ ‫ایجاد‬ ‫های‬‫سایت‬ ‫از‬ ‫برخی‬۳(
‫در‬ ‫بیشتر‬ ‫های‬‫نمونه‬mezzanine.jupo.org/sites
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
16
) ‫مزانین‬ ‫نصب‬۱(
:‫پایتون‬ ‫خود‬ ‫نصب‬
# apt­get install python­pip python­dev 
python­setuptools python­imaging build­essential
‫مجازی‬ ‫محیط‬ ‫نصب‬
‫طریق‬ ‫از‬apt
# apt­get install python­virtualenv
‫طریق‬ ‫از‬pip
$ pip install virtualenv
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
17
) ‫مزانین‬ ‫نصب‬۲(
(‫تصویر‬ ‫با‬ ‫کار‬ ‫های‬‫)کتابخانه‬ ‫سیستمی‬ ‫پیشنیازهای‬ ‫نصب‬
# apt­get install libjpeg8 libjpeg8­dev
# apt­get build­dep python­imaging
‫پایتون‬ ‫های‬‫کتابخانه‬‫پیشنیاز‬
 django
 pillow
 fabric
 grappelli-safe
 filebrowser-safe
 bleach
 pytz
 tzlocal
 chardet
 requests
 requests_oauthlib
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
18
) ‫مزانین‬ ‫نصب‬۳(
‫با‬ ‫نصب‬pip(‫نیاز‬ ‫مورد‬ ‫های‬‫کتابخانه‬ ‫تمام‬ ‫)همراه‬
$ pip install mezzanine
‫سورس‬ ‫روی‬ ‫از‬ ‫نصب‬
$ python setup.py install
‫مجازی‬ ‫محیط‬ ‫در‬ ‫نصب‬
$ virtualenv newenv
$ source newenv/bin/activate
$ deactivate
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
19
) ‫مزانین‬ ‫نصب‬۴(
‫مزانین‬ ‫روزرسانی‬‫به‬
$ pip install ­U mezzanine
‫دیتابیس‬Postgres‫جای‬ ‫به‬SQLite
# apt­get install python­psycopg2
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
20
‫کارتریج‬‫و‬ ‫مزانین‬ ‫نصب‬
‫با‬ ‫نصب‬pip(‫نیاز‬ ‫مورد‬ ‫های‬‫کتابخانه‬ ‫تمام‬ ‫)همراه‬
$ pip install ­U cartridge
‫سورس‬ ‫روی‬ ‫از‬ ‫نصب‬
$ python setup.py install
‫مجازی‬ ‫محیط‬ ‫در‬ ‫نصب‬
$ virtualenv newenv
$ source newenv/bin/activate
$ deactivate
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
21
‫در‬ ‫مزانین‬ ‫نصب‬Pycharm
Pycharm → Setting → Project Interpreter → + → Mezzanine → Install Package
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
22
‫جنگو‬ ‫پروژه‬ ‫به‬ ‫مزانین‬ ‫کردن‬ ‫اضافه‬
‫پوشه‬project_template
‫در‬ ‫نیاز‬ ‫مورد‬ ‫های‬‫ماژول‬setting.py‫و‬urls.py
‫زدن‬ ‫صدا‬mezzanine.utils.conf.set_dynamic_settings
‫انتهای‬ ‫در‬setting.py
 INSTALLED_APP
 TEMPLATE_CONTEXT_PROCESSORS
 MIDDLEWARE_CLASSES
 PACKAGE_NAME_GRAPPELLI
 PACKAGE_NAME_FILEBROWSER
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
23
) ‫مزانین‬ ‫از‬ ‫استفاده‬۱(
 “A mantra for working with Mezzanine: Mezzanine Is
Just Django.”
— Ken Bolton, long-time Mezzanine contributor
‫جدید‬ ‫پروژه‬ ‫ساخت‬
$ mezzanine­project project_name
$ cd project_name
$ python manage.py createdb ­­noinput
$ python manage.py runserver
$ mezzanine­project ­a cartridge project_name
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
24
) ‫مزانین‬ ‫از‬ ‫استفاده‬۲(
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
25
) ‫مزانین‬ ‫از‬ ‫استفاده‬۳(
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
26
‫کارتریج‬
‫مجموعه‬toolkit‫برای‬e-commerce
‫از‬ ‫ای‬‫نمونه‬content type‫مزانین‬ ‫در‬
‫مزانین‬ ‫مبنای‬ ‫بر‬ ‫شده‬ ‫ایجاد‬
‫مزانین‬ ‫دهنده‬‫توسعه‬ ‫طرف‬ ‫از‬
‫فروشگاه‬ ‫محصولت‬ ‫ساختاردهی‬ ‫برای‬ ‫منعطف‬ ‫ساختاری‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
27
) ‫مزانین‬ ‫توسعه‬۱(
‫مزانین‬ ‫در‬ ‫محتوا‬ ‫مدیریت‬ ‫های‬‫تکنیک‬
Pages
•‫ا‬‫ا‬ ‫)تقریب‬ ‫کمی‬‫تعداد‬۱۰‫آبجکت‬ (‫تا‬
•‫در‬ ‫آن‬ ‫محل‬ ‫روی‬ ‫دستی‬ ‫کنترل‬hierarchy
•‫منو‬ ‫در‬ ‫نمایش‬
•‫از‬ ‫بری‬‫ارث‬Displayable
Objects‫یا‬Displayable
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
28
) ‫مزانین‬ ‫توسعه‬۲(
‫سازی‬‫پیاده‬Page-Based
‫از‬ ‫بری‬‫ارث‬mezzanine.pages.models.Page
‫لجیک‬ ‫نوشتن‬ ‫به‬ ‫نیازی‬view‫و‬admin.‫ندارید‬
‫از‬ ‫استفاده‬ ‫با‬
mezzanine.pages.models.RichTextPage
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
29
) ‫مزانین‬ ‫توسعه‬۳(
‫سازی‬‫پیاده‬ ‫از‬ ‫مثال‬Page-Based
‫فایل‬models.py
from mezzanine.pages.models import Page , RichText
class Student(Page,RichText):
major = models.CharField(max_length=60)
photo = FileField(blank=True)
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
30
) ‫مزانین‬ ‫توسعه‬۴(
‫سازی‬‫پیاده‬ ‫از‬ ‫مثال‬Page-Based
‫فایل‬admin.py
from mezzanine.pages.admin import PageAdmin
admin.site.register(models.Student, PageAdmin)
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
31
) ‫مزانین‬ ‫توسعه‬۵(
‫مزانین‬ ‫در‬ ‫محتوا‬ ‫مدیریت‬ ‫های‬‫تکنیک‬
Pages
Objects‫یا‬Displayable
•‫خودکار‬ ‫سازی‬‫مرتب‬ ‫به‬ ‫نیاز‬ ‫و‬ ‫شیء‬ ‫زیاد‬ ‫تعداد‬
•‫تقویم‬ ‫داخل‬ ‫رویدادهای‬ ‫یا‬ ‫کالها‬ :‫مثال‬
•‫صفحات‬ ‫کردن‬ ‫لیست‬ ‫یا‬ ‫جستجو‬ ‫با‬ ‫شدن‬ ‫پیدا‬
•‫طریق‬ ‫از‬ ‫نه‬hierarchy‫ها‬‫منو‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
32
!‫دمــــــــو‬
Open Your Web Browser!
Let's see 'Mezzanine' in action
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
33
) ‫بندی‬‫جمع‬۱(
‫دهد‬‫می‬ ‫انجام‬ ‫خوبی‬ ‫به‬ ‫مزانین‬ ‫آنچه‬
.‫محتوا‬ ‫از‬ ‫تنظیمات‬ ‫و‬ ‫ساختار‬ ‫کامل‬ ‫جداسازی‬
•‫باشند‬ ‫گذاری‬ ‫ورژن‬ ‫قابل‬ ‫باید‬ ‫تنظیمات‬ ‫و‬ ‫ساختار‬
•‫به‬ ‫تست‬ ‫محیط‬ ‫از‬ ‫دیتابیس‬ ‫کردن‬ ‫جابجا‬ ‫امکان‬prod
•‫تست‬ ‫داده‬ ‫با‬ ‫پروداکشن‬ ‫محیط‬ ‫ریختن‬ ‫هم‬ ‫به‬ ‫ریسک‬ ‫نداشتن‬
•Continuous Integration
•‫سرور‬ ‫چندین‬ ‫روی‬ ‫آسان‬ ‫دیپلوی‬
‫صفحات‬ ‫آپ‬‫مارک‬ ‫به‬ ‫کامل‬ ‫دسترسی‬
‫موجود‬ ‫جنگو‬ ‫پروژه‬ ‫به‬ ‫آن‬ ‫افزودن‬ ‫سادگی‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
34
) ‫بندی‬‫جمع‬۲(
‫دهد‬‫نمی‬ ‫انجام‬ ‫خوبی‬ ‫به‬ ‫مزانین‬ ‫آنچه‬
‫ندارد‬ ‫وجود‬ ‫آن‬ ‫در‬ ‫تغییرات‬ ‫کردن‬ ‫بک‬‫رول‬ ‫امکان‬
‫ناقص‬ ‫مستندات‬
•.‫است‬ ‫انجام‬ ‫حال‬ ‫در‬ ‫هایی‬‫تلش‬
•!‫کنید‬ ‫حل‬ ‫را‬ ‫مشکل‬ ‫این‬ ‫توانید‬‫می‬ ‫شما‬
(‫دارد‬ ‫خوانایی‬ ‫کد‬‫سورس‬ ‫)چون‬
‫کد‬ ‫صورت‬ ‫به‬ ‫ساختار‬ ‫سازی‬‫ذخیره‬
•‫کند‬‫می‬ ‫تغییر‬ ‫زیاد‬ ‫کد‬ ‫نتیجه‬ ‫در‬
•.‫ترسند‬‫می‬ ‫دیپلوی‬ ‫از‬ ‫که‬ ‫هایی‬‫سازمان‬ ‫برای‬ ‫نامناسب‬
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
35
‫جنگو‬‫بستر‬ ‫بر‬ ‫مشابه‬ ‫های‬‫فریمورک‬
 Django Fiber
 https://github.com/ridethepony/django-fiber
 Django-CMS
 https://github.com/divio/django-cms
 FeinCMS
 https://github.com/feincms/feincms
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
36
‫ها‬‫لینک‬ ‫و‬ ‫منابع‬
 Source Code
https://github.com/stephenmcd/mezzanine
 Documentation
http://mezzanine.jupo.org/docs
 Mailing list
https://groups.google.com/forum/#!forum/mezzanine-users
‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬
۱۳۹۵/۲/۲۴
‫همایــــــــــش‬
‫پایـــــــــــکان‬
‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬
37
‫قدردانی‬ ‫و‬ ‫تشکر‬
:‫از‬ ‫سپاس‬ ‫با‬
.‫گذاشتید‬ ‫من‬ ‫اختیار‬ ‫در‬ ‫را‬ ‫وقتتان‬ ‫که‬ ‫شما‬
‫جهان‬‫سراسر‬ ‫در‬ ‫آزاد‬ ‫دانش‬ ‫دهندگان‬‫توسعه‬
Pycon
‫پاسخ‬ ‫و‬ ‫پرسش‬‫پاسخ‬ ‫و‬ ‫پرسش‬
‫وسیله‬ ‫به‬ ‫شده‬ ‫طراحی‬
twitter.com/smmsadrnezhtwitter.com/smmsadrnezh
‫صدرنژاد‬ ‫سیدمحمدمسعود‬

More Related Content

Viewers also liked (18)

PDF
تقویم تولید محتوا برای وبلاگ - کتاب تروبا
Abbas Malek Hosseini
 
PPTX
مدیریت تغییر
M Alizadeh
 
PDF
«مسیر ایجاد یک کسب و کار هوشمند»
همکاران سیستم
 
PPTX
Digital Rights Management One For Sharepoint
pabatan
 
PDF
Digital Rights Management for Ebooks
eBOUND Canada
 
PDF
یک سازمان جدید
SAlirezaKashizad
 
PPT
Digital rights management an essential feature in the digital era
Kishor Satpathy
 
PPTX
Digital rights management (drm) and you
SaneMaly
 
PDF
DRM, Digital Content, and the Consumer Experience: Lessons Learned From The M...
Kirk Biglione
 
PPTX
Digital Rights Management PPT
Suresh Khutale
 
PPT
DRM Powerpoint
guest33ff82
 
PPTX
مدیریت محتوا Content management
Hosseinieh Ershad Public Library
 
PPT
Digital Rights Management
Muruli N. Tarikere
 
PDF
دانلود کتاب چگونه تبلیغات موفق بسازیم؟
Amir Bakhtaei (امير بختايي)
 
PDF
چگونه در سازمان خود تیم تولید محتوا تشکیل دهیم؟
Milad Mehraram
 
PDF
Word2vec algorithm
Andrew Koo
 
PPTX
De-mystifying DRM
castLabs
 
PPTX
آموزش Php
aminifar
 
تقویم تولید محتوا برای وبلاگ - کتاب تروبا
Abbas Malek Hosseini
 
مدیریت تغییر
M Alizadeh
 
«مسیر ایجاد یک کسب و کار هوشمند»
همکاران سیستم
 
Digital Rights Management One For Sharepoint
pabatan
 
Digital Rights Management for Ebooks
eBOUND Canada
 
یک سازمان جدید
SAlirezaKashizad
 
Digital rights management an essential feature in the digital era
Kishor Satpathy
 
Digital rights management (drm) and you
SaneMaly
 
DRM, Digital Content, and the Consumer Experience: Lessons Learned From The M...
Kirk Biglione
 
Digital Rights Management PPT
Suresh Khutale
 
DRM Powerpoint
guest33ff82
 
مدیریت محتوا Content management
Hosseinieh Ershad Public Library
 
Digital Rights Management
Muruli N. Tarikere
 
دانلود کتاب چگونه تبلیغات موفق بسازیم؟
Amir Bakhtaei (امير بختايي)
 
چگونه در سازمان خود تیم تولید محتوا تشکیل دهیم؟
Milad Mehraram
 
Word2vec algorithm
Andrew Koo
 
De-mystifying DRM
castLabs
 
آموزش Php
aminifar
 

Similar to معرفی و آموزش سامانه مدیریت محتوای مزانین - سید مسعود صدر نژاد (20)

PDF
Itcms facilities
IT Solution
 
PDF
مهاجرت به متن باز در شرکت توزیع برق مشهد
عباس بني اسدي مقدم
 
PDF
سیستم مدیریت محتوای دروپال| بررسی ویژگی ها و مزایای دروپال
seoiracode
 
PDF
386 wp
Isfahanlug
 
PDF
Wp
Isfahanlug
 
PPTX
Navid Conference - 1394 - Shiraz, Iran
Hamed Takmil
 
PPTX
Content management system
nasimtalebi1984
 
PDF
مستندسازی پروژه های عمرانی در فاز اجرا-Documentation of Construction Projects...
Mohammad Ahmadzadeh
 
PDF
catalog3
Pafco Company
 
PDF
What is Joomla? + Uses and Benefits + Installation Steps
seoiracode
 
DOCX
cloud-based authoring tools
dadyjoon71
 
PDF
قلاب سازی در تحلیل بدافزارهاHooking in Malware Analysis
M Mehdi Ahmadian
 
PDF
Software architecture002
عباس بني اسدي مقدم
 
PPTX
توسعه پروژه های بک‌اند، فرانت‌اند و موبایل با کاتلین
Web Standards School
 
DOCX
alborz resume 5
Shahram Pourhossein
 
PDF
BPMN استانداردی برای مدل سازی فرایندهای کسب وکار
RayBPMS
 
PDF
مهاجرت به متن باز
عباس بني اسدي مقدم
 
PDF
طرح چارچوب متن باز تولید نرم افزار
عباس بني اسدي مقدم
 
DOCX
Digital Publisher
Shad Far
 
PDF
Python - پایتون
efazati
 
Itcms facilities
IT Solution
 
مهاجرت به متن باز در شرکت توزیع برق مشهد
عباس بني اسدي مقدم
 
سیستم مدیریت محتوای دروپال| بررسی ویژگی ها و مزایای دروپال
seoiracode
 
386 wp
Isfahanlug
 
Navid Conference - 1394 - Shiraz, Iran
Hamed Takmil
 
Content management system
nasimtalebi1984
 
مستندسازی پروژه های عمرانی در فاز اجرا-Documentation of Construction Projects...
Mohammad Ahmadzadeh
 
catalog3
Pafco Company
 
What is Joomla? + Uses and Benefits + Installation Steps
seoiracode
 
cloud-based authoring tools
dadyjoon71
 
قلاب سازی در تحلیل بدافزارهاHooking in Malware Analysis
M Mehdi Ahmadian
 
Software architecture002
عباس بني اسدي مقدم
 
توسعه پروژه های بک‌اند، فرانت‌اند و موبایل با کاتلین
Web Standards School
 
alborz resume 5
Shahram Pourhossein
 
BPMN استانداردی برای مدل سازی فرایندهای کسب وکار
RayBPMS
 
مهاجرت به متن باز
عباس بني اسدي مقدم
 
طرح چارچوب متن باز تولید نرم افزار
عباس بني اسدي مقدم
 
Digital Publisher
Shad Far
 
Python - پایتون
efazati
 
Ad

More from irpycon (6)

PDF
Caffe - A deep learning framework (Ramin Fahimi)
irpycon
 
PDF
Medical image Processing - Vahid Nayini
irpycon
 
PDF
ایجاد کاره‌های اوبونتو با پایتون - دانیال بهزادی
irpycon
 
PDF
Word2Vec: Vector presentation of words - Mohammad Mahdavi
irpycon
 
ODP
Python internals and how they affect your code - kasra ahmadvand
irpycon
 
PPTX
تست وب اپ ها با سلنیوم - علیرضا عظیم زاده میلانی
irpycon
 
Caffe - A deep learning framework (Ramin Fahimi)
irpycon
 
Medical image Processing - Vahid Nayini
irpycon
 
ایجاد کاره‌های اوبونتو با پایتون - دانیال بهزادی
irpycon
 
Word2Vec: Vector presentation of words - Mohammad Mahdavi
irpycon
 
Python internals and how they affect your code - kasra ahmadvand
irpycon
 
تست وب اپ ها با سلنیوم - علیرضا عظیم زاده میلانی
irpycon
 
Ad

معرفی و آموزش سامانه مدیریت محتوای مزانین - سید مسعود صدر نژاد

  • 1. Pycon ‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ – ‫صدرنژاد‬ ‫سیدمحمدمسعود‬۲۴‫اردیبهشت‬۱۳۹۵ ) ‫پایتون‬ ‫کنفرانس‬ ‫سومین‬PyCon‫ایران‬ ‫صنعت‬ ‫و‬ ‫علم‬ ‫دانشگاه‬ – ‫تهران‬ ‫در‬ (
  • 2. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 2 ‫مطالب‬ ‫فهرست‬ ۱‫مزانین‬ ‫معرفی‬ . ۲.‫مزانین‬ ‫از‬ ‫استفاده‬ ‫دلیل‬ ۳‫مزانین‬ ‫از‬ ‫استفاده‬ ‫و‬ ‫نصب‬ . ۴‫مزانین‬ ‫توسعه‬ .
  • 3. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 3 ) ‫مزانین‬ ‫معرفی‬۱( ) ‫محتوا‬ ‫مدیریت‬ ‫های‬‫سیستم‬CMS( ‫برای‬ ‫کاربری‬ ‫رابط‬ ‫ارائه‬ •‫دیجیتال‬ ‫محتوای‬ ‫نمایش‬ ‫و‬ ‫ویرایش‬ ،‫ایجاد‬ •‫همزمان‬ ‫صورت‬ ‫به‬ ‫کاربر‬‫چند‬ ‫توسط‬ ‫محتوا‬ ‫مدیریت‬ ‫اصلی‬ ‫اجزاء‬ •) ‫محتوا‬ ‫مدیریت‬ ‫اپلیکیشن‬CMA( •) ‫محتوا‬ ‫تحویل‬ ‫اپلیکیشن‬CDA( ‫به‬ ‫نسبت‬ ‫کمتر‬ ‫انعطاف‬Framework‫ها‬ ‫نویسی‬‫برنامه‬ ‫دانش‬ ‫به‬ ‫کمتر‬‫نیاز‬ ‫و‬ ‫گرافیکی‬ ‫رابط‬ ‫واسطه‬ ‫به‬ ‫سادگی‬ ‫فریمورک‬Django
  • 4. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 4 ) ‫مزانین‬ ‫معرفی‬۲( ‫مجوز‬BSD ‫مزانین‬ ‫از‬ ‫استفاده‬ ‫دلیل‬ ‫پذیر‬‫گسترش‬ ‫معماری‬ ‫ماژول‬ ‫نصب‬ ‫به‬ ‫نیاز‬ ‫بدون‬ ‫امکانات‬ ‫از‬ ‫بسیاری‬ ‫ارائه‬ ) ‫ابتدا‬ ‫از‬ ‫سایت‬ ‫ایجاد‬ ‫امکان‬from scratch( (‫)هک‬ ‫کد‬ ‫در‬ ‫مستقیم‬ ‫دستکاری‬ ‫برای‬ ‫بال‬ ‫پذیری‬‫انعطاف‬ ) ‫فعال‬ ‫کاربری‬ ‫جامعه‬drum.jupo.org( :‫رسمی‬ ‫وبسایت‬http://mezzanine.jupo.org
  • 5. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 5 ) ‫مزانین‬ ‫معرفی‬۳( ‫مزانین‬ ‫با‬ ‫کار‬ ‫برای‬ ‫لزم‬ ‫دانش‬ ‫نویسی‬‫برنامه‬ ‫های‬‫زبان‬ •‫حداقلی‬ ‫دانش‬HTML‫و‬CSS •‫برای‬ ‫پایتون‬extend‫ها‬‫اپ‬ ‫و‬ ‫ها‬‫تایپ‬ ‫کردن‬ ‫جنگو‬ ‫فریمورک‬ ‫اصلی‬ ‫های‬‫مولفه‬ •model , view, template,urlpattern, admin ‫عمومی‬ ‫دانش‬ •‫توسعه‬ ‫محیط‬ ‫تنظیم‬ •‫کنترل‬ ‫ورژن‬ ‫با‬ ‫کار‬ •‫پایتون‬ ‫های‬‫پکیج‬ ‫نصب‬ •‫سرور‬‫وب‬ ‫تنظیم‬
  • 6. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 6 “‫مزانین‬ ‫درباره‬ ‫”نظرات‬  “Mezzanine looks pretty interesting, tempting to get me off Wordpress.” — Jesse Noller, Python core contributor, Python Software Foundation board member  “Mezzanine looks like it may be Django's killer app.” — Antonio Rodriguez, ex CTO of Hewlett Packard  “I'm enjoying working with Mezzanine, it's good work.” — Van Lindberg, Python Software Foundation chairman
  • 7. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 7 ) ‫مزانین‬ ‫معرفی‬۴( ‫کاربران‬ ‫برای‬ ‫مزانین‬ ‫امکانات‬ ) ‫مراتبی‬ ‫سلسله‬ ‫صورت‬ ‫به‬ ‫صفحات‬ ‫مدیریت‬page navigation( ‫وبلگ‬ ‫های‬‫پست‬ ‫مدیریت‬ •‫نمایش‬‫پیش‬ ‫و‬ ‫پیشنویس‬ ،‫انتشار‬ ‫زمان‬ ‫کردن‬ ‫مشخص‬ ،‫ویرایش‬ ،‫ایجاد‬ ‫صورت‬ ‫به‬ ‫ویرایش‬WYSIWYG ‫صورت‬ ‫به‬ ‫صفحات‬ ‫کردن‬ ‫مرتب‬Drag Drop ‫سایت‬ ‫اند‬‫فرانت‬ ‫بخش‬ ‫در‬ ‫مطالب‬ ‫مستقیم‬ ‫ویرایش‬ ‫صورت‬ ‫به‬ ‫صورت‬ ‫به‬ ‫ساز‬‫فرم‬Drag Drop‫خروجی‬ ‫با‬CSV URL‫سئوفرندلی‬ ‫های‬ ‫افزونه‬ ‫)با‬ ‫ساز‬‫فروشگاه‬Cartridge( ‫و‬
  • 8. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 8 ) ‫مزانین‬ ‫معرفی‬۵( ‫داشبورد‬ ‫های‬‫ویجت‬ ‫مدیریت‬ ‫بلگ‬ ‫ساخت‬ ‫مطالب‬ ‫به‬ ‫زدن‬ ‫تگ‬ ‫متنوع‬ ‫پولی‬ ‫و‬ ‫رایگان‬ ‫های‬‫قالب‬ ‫ایمیل‬ ‫تأیید‬ ‫قابلیت‬ ‫با‬ ‫ها‬‫پروفایل‬ ‫و‬ ‫کاربری‬ ‫های‬‫حساب‬ ‫مدیریت‬ ‫به‬ ‫شده‬ ‫ترجمه‬۳۵‫زبان‬ ‫اجتماعی‬ ‫های‬‫شبکه‬ ‫در‬ ‫محتوا‬ ‫گذاری‬‫اشتراک‬ ‫به‬ ‫چندزبانه‬ ‫های‬‫سایت‬ ‫ایجاد‬
  • 9. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 9 ) ‫مزانین‬ ‫معرفی‬۶( ‫ها‬‫دهنده‬‫توسعه‬ ‫برای‬ ‫مزانین‬ ‫امکانات‬ ‫از‬ ‫استفاده‬template‫های‬html‫صفحات‬ ‫برای‬ ‫متفاوت‬ ‫با‬ ‫یکپارچگی‬Twitter Bootstrap API‫ها‬‫مدل‬ ‫در‬ ‫داده‬ ‫جدید‬ ‫انواع‬ ‫با‬ ‫کار‬ ‫برای‬ ‫و‬ ‫جستجو‬ ‫موتور‬API ‫با‬ ‫سازی‬‫یکپارچه‬ ‫امکان‬App‫جنگو‬ ‫برای‬ ‫موجود‬ ‫های‬ ) ‫مهاجرت‬ ‫سهولت‬migration‫دیگر‬ ‫سازهای‬‫وبلگ‬ ‫از‬ ( ) ‫برنامه‬ ‫خودکار‬‫استقرار‬automatic deployment( ‫با‬ ‫یکپارچه‬Disqus‫سیستم‬ ‫یا‬built-in‫تودرتو‬ ‫نظرات‬ ‫برای‬ ‫و‬
  • 10. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 10 ) ‫مزانین‬ ‫معرفی‬۷( ‫با‬ ‫یکپارچه‬Gravatar ‫با‬ ‫یکپارچه‬Google Analytics ‫با‬ ‫یکپارچه‬Twitter feed ‫با‬ ‫یکپارچه‬bit.ly ‫با‬ ‫یکپارچه‬Askismet ‫ایجاد‬test suit(‫توسعه‬ ‫حال‬ ‫)در‬
  • 11. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 11 ‫مزانین‬ ‫های‬‫قالب‬ mezzathe.me
  • 12. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 12 ‫مزانین‬ ‫های‬‫پکیج‬ djangopackages.com/grids/g/mezzanine
  • 13. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 13 ) ‫مزانین‬ ‫با‬ ‫شده‬ ‫ایجاد‬ ‫های‬‫سایت‬ ‫از‬ ‫برخی‬۱( ssc.ce.sharif.edu
  • 14. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 14 ) ‫مزانین‬ ‫با‬ ‫شده‬ ‫ایجاد‬ ‫های‬‫سایت‬ ‫از‬ ‫برخی‬۲( aichallenge.sharif.edu
  • 15. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 15 ) ‫مزانین‬ ‫با‬ ‫شده‬ ‫ایجاد‬ ‫های‬‫سایت‬ ‫از‬ ‫برخی‬۳( ‫در‬ ‫بیشتر‬ ‫های‬‫نمونه‬mezzanine.jupo.org/sites
  • 16. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 16 ) ‫مزانین‬ ‫نصب‬۱( :‫پایتون‬ ‫خود‬ ‫نصب‬ # apt­get install python­pip python­dev  python­setuptools python­imaging build­essential ‫مجازی‬ ‫محیط‬ ‫نصب‬ ‫طریق‬ ‫از‬apt # apt­get install python­virtualenv ‫طریق‬ ‫از‬pip $ pip install virtualenv
  • 17. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 17 ) ‫مزانین‬ ‫نصب‬۲( (‫تصویر‬ ‫با‬ ‫کار‬ ‫های‬‫)کتابخانه‬ ‫سیستمی‬ ‫پیشنیازهای‬ ‫نصب‬ # apt­get install libjpeg8 libjpeg8­dev # apt­get build­dep python­imaging ‫پایتون‬ ‫های‬‫کتابخانه‬‫پیشنیاز‬  django  pillow  fabric  grappelli-safe  filebrowser-safe  bleach  pytz  tzlocal  chardet  requests  requests_oauthlib
  • 18. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 18 ) ‫مزانین‬ ‫نصب‬۳( ‫با‬ ‫نصب‬pip(‫نیاز‬ ‫مورد‬ ‫های‬‫کتابخانه‬ ‫تمام‬ ‫)همراه‬ $ pip install mezzanine ‫سورس‬ ‫روی‬ ‫از‬ ‫نصب‬ $ python setup.py install ‫مجازی‬ ‫محیط‬ ‫در‬ ‫نصب‬ $ virtualenv newenv $ source newenv/bin/activate $ deactivate
  • 19. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 19 ) ‫مزانین‬ ‫نصب‬۴( ‫مزانین‬ ‫روزرسانی‬‫به‬ $ pip install ­U mezzanine ‫دیتابیس‬Postgres‫جای‬ ‫به‬SQLite # apt­get install python­psycopg2
  • 20. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 20 ‫کارتریج‬‫و‬ ‫مزانین‬ ‫نصب‬ ‫با‬ ‫نصب‬pip(‫نیاز‬ ‫مورد‬ ‫های‬‫کتابخانه‬ ‫تمام‬ ‫)همراه‬ $ pip install ­U cartridge ‫سورس‬ ‫روی‬ ‫از‬ ‫نصب‬ $ python setup.py install ‫مجازی‬ ‫محیط‬ ‫در‬ ‫نصب‬ $ virtualenv newenv $ source newenv/bin/activate $ deactivate
  • 21. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 21 ‫در‬ ‫مزانین‬ ‫نصب‬Pycharm Pycharm → Setting → Project Interpreter → + → Mezzanine → Install Package
  • 22. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 22 ‫جنگو‬ ‫پروژه‬ ‫به‬ ‫مزانین‬ ‫کردن‬ ‫اضافه‬ ‫پوشه‬project_template ‫در‬ ‫نیاز‬ ‫مورد‬ ‫های‬‫ماژول‬setting.py‫و‬urls.py ‫زدن‬ ‫صدا‬mezzanine.utils.conf.set_dynamic_settings ‫انتهای‬ ‫در‬setting.py  INSTALLED_APP  TEMPLATE_CONTEXT_PROCESSORS  MIDDLEWARE_CLASSES  PACKAGE_NAME_GRAPPELLI  PACKAGE_NAME_FILEBROWSER
  • 23. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 23 ) ‫مزانین‬ ‫از‬ ‫استفاده‬۱(  “A mantra for working with Mezzanine: Mezzanine Is Just Django.” — Ken Bolton, long-time Mezzanine contributor ‫جدید‬ ‫پروژه‬ ‫ساخت‬ $ mezzanine­project project_name $ cd project_name $ python manage.py createdb ­­noinput $ python manage.py runserver $ mezzanine­project ­a cartridge project_name
  • 24. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 24 ) ‫مزانین‬ ‫از‬ ‫استفاده‬۲(
  • 25. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 25 ) ‫مزانین‬ ‫از‬ ‫استفاده‬۳(
  • 26. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 26 ‫کارتریج‬ ‫مجموعه‬toolkit‫برای‬e-commerce ‫از‬ ‫ای‬‫نمونه‬content type‫مزانین‬ ‫در‬ ‫مزانین‬ ‫مبنای‬ ‫بر‬ ‫شده‬ ‫ایجاد‬ ‫مزانین‬ ‫دهنده‬‫توسعه‬ ‫طرف‬ ‫از‬ ‫فروشگاه‬ ‫محصولت‬ ‫ساختاردهی‬ ‫برای‬ ‫منعطف‬ ‫ساختاری‬
  • 27. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 27 ) ‫مزانین‬ ‫توسعه‬۱( ‫مزانین‬ ‫در‬ ‫محتوا‬ ‫مدیریت‬ ‫های‬‫تکنیک‬ Pages •‫ا‬‫ا‬ ‫)تقریب‬ ‫کمی‬‫تعداد‬۱۰‫آبجکت‬ (‫تا‬ •‫در‬ ‫آن‬ ‫محل‬ ‫روی‬ ‫دستی‬ ‫کنترل‬hierarchy •‫منو‬ ‫در‬ ‫نمایش‬ •‫از‬ ‫بری‬‫ارث‬Displayable Objects‫یا‬Displayable
  • 28. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 28 ) ‫مزانین‬ ‫توسعه‬۲( ‫سازی‬‫پیاده‬Page-Based ‫از‬ ‫بری‬‫ارث‬mezzanine.pages.models.Page ‫لجیک‬ ‫نوشتن‬ ‫به‬ ‫نیازی‬view‫و‬admin.‫ندارید‬ ‫از‬ ‫استفاده‬ ‫با‬ mezzanine.pages.models.RichTextPage
  • 29. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 29 ) ‫مزانین‬ ‫توسعه‬۳( ‫سازی‬‫پیاده‬ ‫از‬ ‫مثال‬Page-Based ‫فایل‬models.py from mezzanine.pages.models import Page , RichText class Student(Page,RichText): major = models.CharField(max_length=60) photo = FileField(blank=True)
  • 30. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 30 ) ‫مزانین‬ ‫توسعه‬۴( ‫سازی‬‫پیاده‬ ‫از‬ ‫مثال‬Page-Based ‫فایل‬admin.py from mezzanine.pages.admin import PageAdmin admin.site.register(models.Student, PageAdmin)
  • 31. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 31 ) ‫مزانین‬ ‫توسعه‬۵( ‫مزانین‬ ‫در‬ ‫محتوا‬ ‫مدیریت‬ ‫های‬‫تکنیک‬ Pages Objects‫یا‬Displayable •‫خودکار‬ ‫سازی‬‫مرتب‬ ‫به‬ ‫نیاز‬ ‫و‬ ‫شیء‬ ‫زیاد‬ ‫تعداد‬ •‫تقویم‬ ‫داخل‬ ‫رویدادهای‬ ‫یا‬ ‫کالها‬ :‫مثال‬ •‫صفحات‬ ‫کردن‬ ‫لیست‬ ‫یا‬ ‫جستجو‬ ‫با‬ ‫شدن‬ ‫پیدا‬ •‫طریق‬ ‫از‬ ‫نه‬hierarchy‫ها‬‫منو‬
  • 32. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 32 !‫دمــــــــو‬ Open Your Web Browser! Let's see 'Mezzanine' in action
  • 33. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 33 ) ‫بندی‬‫جمع‬۱( ‫دهد‬‫می‬ ‫انجام‬ ‫خوبی‬ ‫به‬ ‫مزانین‬ ‫آنچه‬ .‫محتوا‬ ‫از‬ ‫تنظیمات‬ ‫و‬ ‫ساختار‬ ‫کامل‬ ‫جداسازی‬ •‫باشند‬ ‫گذاری‬ ‫ورژن‬ ‫قابل‬ ‫باید‬ ‫تنظیمات‬ ‫و‬ ‫ساختار‬ •‫به‬ ‫تست‬ ‫محیط‬ ‫از‬ ‫دیتابیس‬ ‫کردن‬ ‫جابجا‬ ‫امکان‬prod •‫تست‬ ‫داده‬ ‫با‬ ‫پروداکشن‬ ‫محیط‬ ‫ریختن‬ ‫هم‬ ‫به‬ ‫ریسک‬ ‫نداشتن‬ •Continuous Integration •‫سرور‬ ‫چندین‬ ‫روی‬ ‫آسان‬ ‫دیپلوی‬ ‫صفحات‬ ‫آپ‬‫مارک‬ ‫به‬ ‫کامل‬ ‫دسترسی‬ ‫موجود‬ ‫جنگو‬ ‫پروژه‬ ‫به‬ ‫آن‬ ‫افزودن‬ ‫سادگی‬
  • 34. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 34 ) ‫بندی‬‫جمع‬۲( ‫دهد‬‫نمی‬ ‫انجام‬ ‫خوبی‬ ‫به‬ ‫مزانین‬ ‫آنچه‬ ‫ندارد‬ ‫وجود‬ ‫آن‬ ‫در‬ ‫تغییرات‬ ‫کردن‬ ‫بک‬‫رول‬ ‫امکان‬ ‫ناقص‬ ‫مستندات‬ •.‫است‬ ‫انجام‬ ‫حال‬ ‫در‬ ‫هایی‬‫تلش‬ •!‫کنید‬ ‫حل‬ ‫را‬ ‫مشکل‬ ‫این‬ ‫توانید‬‫می‬ ‫شما‬ (‫دارد‬ ‫خوانایی‬ ‫کد‬‫سورس‬ ‫)چون‬ ‫کد‬ ‫صورت‬ ‫به‬ ‫ساختار‬ ‫سازی‬‫ذخیره‬ •‫کند‬‫می‬ ‫تغییر‬ ‫زیاد‬ ‫کد‬ ‫نتیجه‬ ‫در‬ •.‫ترسند‬‫می‬ ‫دیپلوی‬ ‫از‬ ‫که‬ ‫هایی‬‫سازمان‬ ‫برای‬ ‫نامناسب‬
  • 35. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 35 ‫جنگو‬‫بستر‬ ‫بر‬ ‫مشابه‬ ‫های‬‫فریمورک‬  Django Fiber  https://github.com/ridethepony/django-fiber  Django-CMS  https://github.com/divio/django-cms  FeinCMS  https://github.com/feincms/feincms
  • 36. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 36 ‫ها‬‫لینک‬ ‫و‬ ‫منابع‬  Source Code https://github.com/stephenmcd/mezzanine  Documentation http://mezzanine.jupo.org/docs  Mailing list https://groups.google.com/forum/#!forum/mezzanine-users
  • 37. ‫تهران‬ ‫در‬ ‫پایتون‬ ‫کنفرانس‬‫سومین‬ ۱۳۹۵/۲/۲۴ ‫همایــــــــــش‬ ‫پایـــــــــــکان‬ ‫صدرنژاد‬ ‫سیدمحمدمسعود‬‫مزانین‬ ‫محتوا‬ ‫مدیریت‬ ‫سامانه‬ ‫آموزش‬ ‫و‬ ‫معرفی‬ 37 ‫قدردانی‬ ‫و‬ ‫تشکر‬ :‫از‬ ‫سپاس‬ ‫با‬ .‫گذاشتید‬ ‫من‬ ‫اختیار‬ ‫در‬ ‫را‬ ‫وقتتان‬ ‫که‬ ‫شما‬ ‫جهان‬‫سراسر‬ ‫در‬ ‫آزاد‬ ‫دانش‬ ‫دهندگان‬‫توسعه‬
  • 38. Pycon ‫پاسخ‬ ‫و‬ ‫پرسش‬‫پاسخ‬ ‫و‬ ‫پرسش‬ ‫وسیله‬ ‫به‬ ‫شده‬ ‫طراحی‬ twitter.com/smmsadrnezhtwitter.com/smmsadrnezh ‫صدرنژاد‬ ‫سیدمحمدمسعود‬