brew install openldap สร้างสภาพแวดล้อมเสมือนจริงและ cd
python3 -m venv ENV
cd ENV
โคลน repo ไปยังไดเรกทอรีย่อย (เช่น git clone REPO_URL src )
เปิดใช้งานสภาพแวดล้อมเสมือนจริง
source bin/activate
cd ไปยังไดเรกทอรี SRC ใหม่และข้อกำหนดการติดตั้ง
cd src
pip install -r requirements.txt
หมายเหตุ: หาก pip install ส่งคืนบล็อกของข้อความข้อผิดพลาดรวมถึง fatal error: 'sasl.h' file not found เมื่อติดตั้ง python-ldap ให้ทำสิ่งต่อไปนี้:
ในข้อกำหนด. txt แสดงความคิดเห็นข้อกำหนดของ python-ldap
pip install -r requirements.txt . txt ควรทำสำเร็จให้สำเร็จ
รันต่อไปนี้เปลี่ยน "เวอร์ชัน" ด้วยหมายเลขเวอร์ชันที่ระบุไว้สำหรับแพ็คเกจ python-ldap ใน required.txt:
pip install python-ldap==VERSION
--global-option=build_ext
--global-option="-I$(xcrun --show-sdk-path)/usr/include/sasl"
ข้อกำหนดของ python-ldap ในข้อกำหนด. txt และบันทึกไฟล์
ตั้งค่าการตั้งค่าในพื้นที่โดยใช้ไฟล์ settings_local.templ.py
ตั้งค่า static_files/static/robots.txt โดยใช้ static_files/static/robots.templ.txt
เรียกใช้คำสั่งการปรับใช้: python manage.py deploy สิ่งนี้เรียกใช้การย้ายถิ่นใด ๆ และรวบรวมไฟล์คงที่
สร้าง superuser: python manage.py createsuperuser
หากคุณไม่ได้ตั้งใจที่จะนำเข้าข้อมูลปฏิทินที่มีอยู่ให้สร้างปฏิทินหลักและกำหนดบัญชี Superuser ของคุณเป็นเจ้าของ มิฉะนั้นให้ข้ามขั้นตอนนี้
python manage.py shell
>>> from django.contrib.auth.models import User
>>> from events.models import Calendar
>>> u = User.objects.get(pk=1)
>>> c = Calendar(title='Events at UCF', owner=u)
>>> c.save()
>>> exit()
โปรดทราบว่าผู้นำเข้าคนนี้ควรทำงานบนฐานข้อมูลใหม่ทันทีหลังจากเรียกใช้ python manage.py syncdb หรือ python manage.py flush
ก่อนที่จะใช้การนำเข้านี้ตรวจสอบให้แน่ใจว่ามีการสร้างผู้ใช้ใหม่ใน Django สำหรับผู้ใช้ที่ไม่ใช่ NID ทุกคนในระบบ UNL เหตุการณ์ของผู้ใช้เหล่านี้จะล้มเหลวในการนำเข้าเป็นอย่างอื่น
CD ไปยังโฟลเดอร์ SRC Virtual Environment ใหม่
เปิดใช้งานสภาพแวดล้อมเสมือนจริง
source ../bin/activate
เพิ่มข้อมูลฐานข้อมูลเหตุการณ์เก่าไปยัง SETTING_LOCAL.PY ภายใต้ชื่อฐานข้อมูล 'UnreareRevents' ตรวจสอบให้แน่ใจว่า enable_clearcache ถูกตั้งค่าเป็น 'false'
เรียกใช้คำสั่งนำเข้า
python manage.py import-unl-events
รีสตาร์ทแอพ
ห้ามแคชตามความจำเป็น
CD ไปยังโฟลเดอร์ SRC Virtual Environment ใหม่
เปิดใช้งานสภาพแวดล้อมเสมือนจริง
source ../bin/activate
ตรวจสอบให้แน่ใจว่า maps_domain และ location_data_url ถูกตั้งค่าใน settings_local.py และ enable_clearcache นั้นถูกตั้งค่าเป็น 'false'
เรียกใช้คำสั่งนำเข้า
python manage.py import-locations
รีสตาร์ทแอพ
ห้ามแคชตามความจำเป็น
ไม่เคยมุ่งมั่นที่จะเป็นนาย สร้างสาขาหรือส้อมและทำงานกับคุณสมบัติใหม่ เมื่อเสร็จแล้วมันจะถูกรวมกลับไปที่สาขาหลัก
หากคุณใช้สาขาเพื่อพัฒนาคุณสมบัติตรวจสอบให้แน่ใจว่าได้ลบสาขาเก่าเมื่อมันถูกรวมเข้ากับมาสเตอร์
โครงการนี้ใช้ Gulp เพื่อจัดการงานต่าง ๆ เช่นการรวบรวมและ minifying Sass Files และ JavaScript ขนาดเล็ก/ughifying ใช้ขั้นตอนต่อไปนี้เพื่อตั้งค่าอึกสำหรับโครงการนี้
npm install จากไดเรกทอรีรูทเพื่อติดตั้งแพ็คเกจโหนดที่กำหนดไว้ใน package.jsongulp-config.template.json ทำการเปลี่ยนแปลงที่ต้องการและบันทึกเป็น gulp-config.jsongulp default เพื่อติดตั้งส่วนประกอบส่วนหน้าทั้งหมดและรวบรวมสินทรัพย์คงที่gulp watch ในระหว่างการพัฒนาเพื่อตรวจจับการเปลี่ยนแปลงไฟล์แบบคงที่โดยอัตโนมัติ เมื่อตรวจพบการเปลี่ยนแปลงคำสั่ง minification และการรวบรวมจะทำงานโดยอัตโนมัติ หากคุณเปิดใช้งาน Browsersync ใน gulp-config.json มันจะโหลดเบราว์เซอร์ของคุณใหม่เมื่อไฟล์ SCSS หรือ JS เปลี่ยนไปstatic_files/static/ ) ถูกส่งไปยัง Repo เมื่อทำการเปลี่ยนแปลงไฟล์คงที่ รูปแบบที่กำหนดเองดิบทั้งหมดสำหรับโครงการนี้มีอยู่ในไฟล์ SASS แยกต่างหากใน static_files/assets/scss/ เมื่อแก้ไขสไตล์ชีทในโครงการนี้ให้แก้ไขเฉพาะไฟล์ในไดเรกทอรีนี้เท่านั้น อย่าแก้ไขไฟล์ใน static_files/static/css/ โดยตรง ! ไฟล์ SASS รวบรวมและเขียนลงในไดเรกทอรีนี้
ไฟล์ SASS บางส่วนโดยทั่วไปจะถูกคั่นด้วยฟังก์ชั่นและจะต้องรวบรวมในลำดับที่เฉพาะเจาะจง
โครงการนี้รวมไลบรารี JavaScript ของผู้ขายเข้ากับไฟล์ของเราเองดังนั้นจึงต้องส่งไปยังไคลเอนต์ให้น้อยลง รายการด้านล่างวางแผนการรวม/การปั่นป่วนพื้นฐาน
สคริปต์ที่ทำเครื่องหมายไว้ *vendor* ถูกเรียกคืนเป็นแพ็คเกจ NPM และต่อกันในไฟล์โครงการที่รวมไว้ในระหว่างการประมวลผลอึก
สคริปต์ที่ทำเครื่องหมายไว้ *project* เป็นสคริปต์ที่ดูแลโดยโครงการนี้และสามารถพบได้ใน static_files/assets/js อย่าแก้ไขไฟล์ใน static_files/static/js/ โดยตรง
นอกเหนือจากสคริปต์ที่ระบุไว้ข้างต้นไลบรารี Tinymce จะถูกคัดลอกไปยังไดเรกทอรีย่อยของตัวเอง static_files/static/js/wysiwyg ระหว่างการประมวลผลอึก โดยค่าเริ่มต้น Tinymce คาดว่าจะมีธีมปลั๊กอินและสกินของมันอยู่ในไดเรกทอรีย่อยเมื่อเทียบกับไดเรกทอรีรากของสคริปต์ tinymce หลักดังนั้นเราจึงรักษาโครงสร้างไดเรกทอรีให้ใกล้ชิดที่สุดเท่าที่จะเป็นไปได้
นอกจากนี้เรายังใช้การปรับแต่งกับสกินฟิวชั่นเริ่มต้น "Lightgray" หลังจากไดเรกทอรีเสร็จสิ้นการคัดลอกจากไดเรกทอรีส่วนประกอบ การปรับแต่งเหล่านี้ควรได้รับการแก้ไขใน static_files/assets/scss/content.scss