คำถามติดแท็ก django

Django เป็นเฟรมเวิร์กแอปพลิเคชันบนเว็บฝั่งเซิร์ฟเวอร์โอเพ่นซอร์สซึ่งเขียนด้วยภาษา Python ออกแบบมาเพื่อลดความพยายามในการสร้างเว็บไซต์ที่ขับเคลื่อนด้วยข้อมูลและเว็บแอปพลิเคชันที่ซับซ้อนโดยให้ความสำคัญเป็นพิเศษกับโค้ดน้อยลงไม่ซ้ำซ้อนและมีความชัดเจนมากกว่าโดยนัย

4
กำลังสำรองฐานข้อมูล MySQL ใน Git เป็นความคิดที่ดีหรือไม่
ฉันพยายามปรับปรุงสถานการณ์การสำรองข้อมูลสำหรับแอปพลิเคชันของฉัน ฉันมีแอพพลิเคชั่น Django และฐานข้อมูล MySQL ฉันอ่านบทความแนะนำการสำรองฐานข้อมูลใน Git ในมือข้างหนึ่งฉันชอบมันจะเก็บสำเนาของข้อมูลและรหัสในการซิงค์ แต่ Git นั้นออกแบบมาสำหรับรหัสไม่ใช่สำหรับข้อมูล เช่นนี้มันจะทำงานพิเศษมากมายซึ่งต่างจากการถ่ายโอนข้อมูล MySQL ทุกการกระทำซึ่งไม่จำเป็นจริงๆ หากฉันบีบอัดไฟล์ก่อนจัดเก็บไฟล์ git จะยังคงแตกต่างกันหรือไม่? (ปัจจุบันไฟล์การถ่ายโอนข้อมูลถูกยกเลิกการบีบอัด 100MB, 5.7MB เมื่อบีบอัดไฟล์) แก้ไข: คำจำกัดความสคีมาของรหัสและฐานข้อมูลมีอยู่แล้วใน Git จริง ๆ แล้วเป็นข้อมูลที่ฉันกังวลเกี่ยวกับการสำรองตอนนี้
57 database  git  mysql  django 

6
ฉันจะเรียนรู้ Python จากศูนย์ถึงการพัฒนาเว็บได้อย่างไร [ปิด]
ฉันกำลังมองหาการเรียนรู้ Python สำหรับการพัฒนาเว็บ สมมติว่าฉันมีประสบการณ์การพัฒนาเว็บขั้นพื้นฐานด้วย Java (JSP / Servlets) ฉันคุ้นเคยกับการออกแบบเว็บ (HTML, CSS, JS) แนวคิดการเขียนโปรแกรมพื้นฐานและฉันใหม่กับ Python อย่างสมบูรณ์ การเรียนรู้ Python ในรูปแบบที่มีโครงสร้างซึ่งในที่สุดจะนำฉันไปสู่การพัฒนาเว็บไซต์ด้วย Python และ Django ฉันไม่ต้องรีบทำเว็บแอพพลิเคชั่นใน Python ดังนั้นฉันต้องการเรียนรู้อย่างละเอียดเพื่อไม่ให้เกิดช่องว่างในความรู้เกี่ยวกับเทคโนโลยีที่เกี่ยวข้องกับการพัฒนาเว็บใน Python มีหนังสือทรัพยากรหรือเทคนิคใดบ้างที่จะช่วยฉันในความพยายามของฉัน ฉันควรจะอ่าน / อ่านลำดับใด UPDATE: เมื่อฉันพูดว่าการเรียนรู้ในรูปแบบที่มีโครงสร้างฉันหมายถึงการเริ่มต้นจากพื้นฐานแล้วเรียนรู้เนื้อหาขั้นสูงโดยไม่ต้องทิ้งรายละเอียด / คุณสมบัติที่สำคัญที่ Python มีให้ ฉันต้องการทราบวิธีการใช้สิ่งที่ฉันรู้แล้วในการเขียนโปรแกรมกับ Python

4
วิธีการพัฒนาส่วนหน้า (UI) สำหรับเว็บไซต์ Django ของฉัน
ฉันกำลังเรียนรู้ Django และใหม่ต่อการพัฒนาเว็บ โปรดขอโทษด้วยถ้าคุณพบว่าคำถามนี้โง่เกินไป ดังนั้นฉันกำลังสร้างแอปพลิเคชัน Facebook โดยใช้ Django ซึ่งฉันต้องการโฮสต์ใน Google App Engine โครงการจะเน้นที่การอ่านฟีด RSS / Atom ของเว็บไซต์ใด ๆ (นั่นคือทั้งหมดที่ฉันสามารถพูดได้ตอนนี้) ฉันมั่นใจในการประมวลผลไฟล์ RSS / Atom แต่ฉันกังวลเกี่ยวกับส่วนหน้า (ส่วนต่อประสานผู้ใช้) - "ส่วนการออกแบบ" ฉันไม่ทราบว่า HTML / CSS / JavaScript (ฉันสามารถจัดการกับสิ่ง HTML ง่ายๆ แต่ไม่นำไปสู่สิ่งที่ออกแบบ) ก่อนอื่นฉันคิดว่าการใช้เครื่องมืออย่าง Dreamweaver หรือซอฟต์แวร์ที่เทียบเท่ากันสำหรับการออกแบบ UI แต่เมื่อฉันเริ่มเรียนรู้ django และเริ่มเข้าสู่มันดูเหมือนว่าจะเป็นสิ่งที่ "เป็นไปไม่ได้" ดังนั้น, ฉันจะออกแบบส่วน UI ของเว็บไซต์ได้อย่างไร ฉันไม่สามารถใช้เครื่องมืออย่าง …

3
ที่ควรวางตรรกะทางธุรกิจหลามใน django
ฉันเพิ่งเริ่มเรียนรู้การพัฒนา Django / Python / Web ปัญหานี้ทำให้ฉันหนักใจมาระยะหนึ่งแล้ว ฉันกำลังสร้างแอปพลิเคชันที่มีแม่แบบหลายรายการใน Django ฉันมี views.py ซึ่งเป็นเพียงการแสดงผลการตอบสนองต่อเทมเพลตนั้นและฉันมี models.py ที่ฉันได้จัดทำฐานข้อมูลของฉัน ในหนึ่งในเทมเพลตของฉันฉันต้องอัปโหลดภาพ (ซึ่งฉันสามารถทำได้) และฉันต้องเรียกใช้ลอจิกซึ่งขึ้นอยู่กับคุณสมบัติของภาพที่อัปโหลด (ยังไม่เสร็จ) ตรรกะนี้เกี่ยวข้องกับการคำนวณจำนวนมาก หลังจากทำการคำนวณตรรกะควรส่งคืนข้อมูล (พิกัด) ที่ประมวลผลไปยังเทมเพลต ฉันสามารถดำเนินการทั้งหมดนี้ได้สำเร็จในแอปพลิเคชันหลามแบบสแตนด์อโลนสำหรับการเรียกใช้ไฟล์หลามหลังจากที่อื่น อย่างไรก็ตามเนื่องจากตอนนี้ฉันต้องการทำให้เว็บแอปพลิเคชันนี้ฉันเริ่มใช้เฟรมเวิร์ก Django ฉันทำการค้นหาจำนวนมาก แต่ฉันยังคงไม่สามารถระบุได้ว่าฉันควรวางไฟล์ Python นี้ตรงไหนกับตรรกะทั้งหมด ฉันควรจะมีไฟล์ที่ใช้คลาสอื่น(logic.py)และเรียกมันจากview.py? ฉัน googled และพบว่านักพัฒนาจำนวนมากวางตรรกะทางธุรกิจของตนใน models.py ใน Django อย่างไรก็ตามฉันรู้สึกว่ามันไม่ถูกต้องเพราะรูปแบบควรสื่อสารกับส่วนหลังเท่านั้น ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมขอบคุณล่วงหน้า

5
Python และ Django ยากลำบากแค่ไหนในการรับพัฒนาเว็บ Java / .NET? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันเพิ่งเริ่มงานใหม่เมื่อสองสามเดือนก่อนที่ บริษัท ขนาดเล็กที่ฉันกำลังนำการพัฒนาทั้งหมดในปัจจุบันและอนาคต โดยส่วนตัวฉันมีประสบการณ์หลายปีในการออกแบบและพัฒนาซอฟต์แวร์จาก Java ส่วนใหญ่ แต่ยังรวมถึงมุมมอง. NET ฉันเลือก. NET ในอาชีพของฉันในภายหลังได้อย่างง่ายดายและไม่ต้องมีการฝึกอบรมใด ๆ เพื่อให้ทำงานได้อย่างยอดเยี่ยมและยิ่งไปกว่านั้นมันช่วยให้ฉันเข้าใจและซาบซึ้งในความเป็นสากลของแนวปฏิบัติที่ดีที่สุดและชุดรูปแบบทั่วไป เพื่อแก้ปัญหาเดียวกัน เจ้านายของฉันมี บริษัท เริ่มต้นอยู่ด้านข้างและโดยไม่เปิดเผยข้อมูลมากเกินไปเขาต้องการเว็บแอปพลิเคชั่นที่มีความซับซ้อนพอสมควรซึ่งรวมเข้ากับ Google Maps เพื่อสร้างเส้นทาง เขาทำสัญญากับเว็บแอปพลิเคชันที่พวกเขา overpromised, underdelivered ส่วนใหญ่และวิ่งข้ามเส้นตายเขากำลังต่อสู้เพื่อพยายามกู้คืนเงินบางส่วนที่เขาลงทุน เขามีซอร์สโค้ดสำหรับไซต์ตามที่เป็นอยู่ในขณะนี้ แต่มีรายการซักผ้าของสิ่งที่เขาต้องการแก้ไขและเพิ่มก่อนที่เขาจะอยู่กับมัน เขาถามฉันว่าฉันต้องการทำสิ่งนี้ที่ด้านข้างเพื่อรับเงินพิเศษบางส่วนหรือไม่ แต่ปัญหาคือเว็บไซต์เขียนด้วย Python โดยใช้ Django ซึ่งฉันไม่มีประสบการณ์ใด ๆ เลย ฉันบอกเขาว่าฉันไม่ใช่คนที่ดีที่สุดสำหรับเรื่องนี้เพราะฉันไม่รู้อะไรเกี่ยวกับ Python หรือ Django และจะต้องเรียนรู้ตั้งแต่ต้น ฉันรู้สึกว่ามันจะไม่ยุติธรรมสำหรับฉันที่จะเรียกเก็บเงินเขาทุกชั่วโมงสำหรับเวลาของฉันถ้าฉันใช้เวลาในการเรียนรู้ภาษาและแพลตฟอร์ม จากการสรุประดับประสบการณ์ของฉันคุณจะเดาได้ยากแค่ไหนหรือใช้เวลาเท่าไหร่ หากคุณคิดว่าจะเป็นการเสียเวลาใครสามารถแนะนำข้อเสนอแนะในการหาผู้พัฒนาเว็บ Python …

4
แบบฟอร์ม Django ละเมิด MVC หรือไม่
ฉันเพิ่งเริ่มทำงานกับ Django ที่มาจาก Spring MVC มาหลายปีและรูปแบบการติดตั้งใช้งานเหมือนเป็นบ้าเล็กน้อย หากคุณไม่คุ้นเคยรูปแบบ Django จะเริ่มต้นด้วยคลาสของโมเดลโมเดลที่กำหนดฟิลด์ของคุณ ฤดูใบไม้ผลิเริ่มต้นคล้ายกับวัตถุการสนับสนุนแบบฟอร์ม แต่ที่ Spring จัดเตรียมtaglibสำหรับการรวมองค์ประกอบของฟอร์มเข้ากับวัตถุสำรองภายใน JSP ของคุณ Django มีวิดเจ็ตของฟอร์มที่เชื่อมโยงโดยตรงกับโมเดล มีวิดเจ็ตเริ่มต้นที่คุณสามารถเพิ่มแอตทริบิวต์สไตล์ให้กับฟิลด์ของคุณเพื่อใช้ CSS หรือกำหนดวิดเจ็ตที่กำหนดเองอย่างสมบูรณ์เป็นคลาสใหม่ ทุกอย่างจะไปในรหัสหลามของคุณ ที่ดูเหมือนว่าถั่วกับฉัน ก่อนอื่นคุณจะใส่ข้อมูลเกี่ยวกับมุมมองของคุณโดยตรงในแบบจำลองของคุณและประการที่สองคุณจะผูกพันรูปแบบของคุณกับมุมมองที่เฉพาะเจาะจง ฉันพลาดอะไรไปรึเปล่า? แก้ไข: โค้ดตัวอย่างบางส่วนตามที่ร้องขอ Django: # Class defines the data associated with this form class CommentForm(forms.Form): # name is CharField and the argument tells Django to use a …
16 mvc  django 

2
กลยุทธ์แอปพลิเคชัน Django
ฉันทำงานเป็นระยะเวลานานในโครงการ Django ซึ่งเติบโตเร็ว ๆ นี้ ฉันได้รับการคิดเล็กน้อยเกี่ยวกับกลยุทธ์ที่จะใช้เพื่อให้ง่ายต่อการจัดการ สิ่งหนึ่งที่ฉันต้องการป้อนข้อมูลบางอย่างคือถ้าฉันควรแยกแอปพลิเคชันของฉันออกเป็นแอปพลิเคชันขนาดเล็กหลายตัว นั่นจะทำให้มุมมองและไฟล์ของฉันเล็กลงและแยกความกังวลออก สิ่งหนึ่งที่รบกวนจิตใจฉันในเรื่องนี้คือในแอปพลิเคชันของฉันฉันจะมีวิธีการช่วยเหลือหลายอย่างที่จะใช้กับแอปพลิเคชัน นอกจากนี้บางรุ่นจะต้องมีการแชร์ / ใช้ระหว่างแอพพลิเคชั่นด้วย นี่จะสมเหตุสมผลไหม สิ่งนี้ไม่ได้เป็นไปได้ด้วยการแยกข้อกังวลที่ฉันหวังว่าจะประสบความสำเร็จโดยแยกแอปของฉันในแอปขนาดเล็กหลายแอป อะไรจะเป็นวิธีที่ดีในการแบ่งปันวิธีใช้ตัวช่วยโมเดลและอื่น ๆ ในแอปพลิเคชัน

1
Windows เป็น“ พลเมืองชั้นสอง” ในชุมชน Django หรือไม่?
ขณะนี้ฉันกำลังทำ R&D สำหรับเว็บแอปพลิเคชันซึ่งเราวางแผนที่จะโฮสต์ในตอนแรกและจากนั้นให้ลูกค้าโฮสต์ด้วยตัวเอง งานของฉันได้รับการประเมินกรอบเว็บเพื่อดูว่าจะให้ผลผลิตที่ใหญ่ที่สุดในตอนแรกและความง่ายในการบำรุงรักษาในขณะที่ช่วยให้เราสามารถสนับสนุนการปรับใช้กับสภาพแวดล้อมที่ควบคุมโดยลูกค้าได้อย่างง่ายดาย ทีมงานของเรามีประสบการณ์กับ ASP.NET (MVC และ Webforms) และ Ruby on Rails ประสบการณ์ของเรากับ Rails คือการปรับใช้ Windows เป็นเรื่องต้องห้ามอย่างมากและคำถามใด ๆ เกี่ยวกับ IRC หรือ StackOverflow จะได้รับการตอบสนองด้วยการกระตุกเข่า อย่างไรก็ตามในกรณีนี้ตลาดเป้าหมายของเราอาจใช้เซิร์ฟเวอร์ windows หรือ Linux นี่เป็นกรณีในดินแดน Django หรือไม่? เป็นไปได้หรือไม่กับสมรรถนะขยะ? เป็นไปได้ไหมที่จะสูญเสียความเจ็บปวด? เห็นว่าสมเหตุสมผลและไม่ถือเป็นความคิดที่โง่อย่างสิ้นเชิงที่ไม่ต้องการรัน Linux หรือไม่?

4
ฉันควรรวมมาร์กอัพ HTML ในการตอบสนอง JSON ของฉันหรือไม่
ในไซต์อีคอมเมิร์ซเมื่อเพิ่มรายการลงในรถเข็นฉันต้องการแสดงหน้าต่างป๊อปอัปพร้อมตัวเลือกที่คุณสามารถเลือกได้ ลองนึกภาพคุณกำลังสั่งซื้อ iPod Shuffle และตอนนี้คุณต้องเลือกสีและข้อความที่จะแกะสลัก ฉันต้องการให้หน้าต่างเป็นแบบโมดัลดังนั้นฉันจึงใช้Lightbox ที่มีการเรียก Ajax ตอนนี้ฉันมีสองตัวเลือก: ตัวเลือก 1: ส่งข้อมูลเท่านั้นและสร้างมาร์กอัพ HTML โดยใช้ JavaScript สิ่งที่ดีเกี่ยวกับเรื่องนี้คือมันทำให้คำขออาแจ็กซ์ลดน้อยลงและไม่ผสมข้อมูลกับมาร์กอัป สิ่งที่ไม่ดีนักเกี่ยวกับเรื่องนี้คือตอนนี้ฉันต้องใช้ JavaScript เพื่อแสดงผลของฉันแทนที่จะมีเทมเพลตเอ็นจิ้นบนฝั่งเซิร์ฟเวอร์ทำ ฉันอาจจะสามารถที่จะทำความสะอาดวิธีบิตโดยใช้วิธีการแก้ปัญหา templating ฝั่งไคลเอ็นต์ ตัวเลือก 2: ส่งมาร์กอัพ HTML สิ่งที่ดีเกี่ยวกับเรื่องนี้คือฉันสามารถมีเครื่องมือสร้างเทมเพลตฝั่งเซิร์ฟเวอร์เดียวกับที่ฉันใช้สำหรับงานการเรนเดอร์ที่เหลือ (Django) ทำการเรนเดอร์ของไลท์บ็อกซ์ JavaScript ใช้เพื่อแทรกแฟรกเมนต์ HTML ลงในหน้าเท่านั้น ดังนั้นจะทำให้การเรนเดอร์ไปยังเอ็นจินการเรนเดอร์อย่างชัดเจน ทำให้รู้สึกถึงฉัน แต่ฉันรู้สึกไม่สบายใจที่จะรวบรวมข้อมูลและมาร์กอัพในการโทร Ajax ด้วยเหตุผลบางอย่าง ฉันไม่แน่ใจว่าอะไรทำให้ฉันรู้สึกไม่สบายใจ ฉันหมายความว่ามันเป็นวิธีเดียวกับที่ทุกหน้าเว็บแสดงผล - ข้อมูลและมาร์กอัป - ใช่ไหม?
13 mvc  django  templates  json 

1
การทดสอบหน่วยใน Django
ฉันพยายามอย่างหนักที่จะเขียนการทดสอบหน่วยที่มีประสิทธิภาพสำหรับโครงการขนาดใหญ่ Django ฉันมีความครอบคลุมการทดสอบที่ดีพอสมควร แต่ฉันได้ตระหนักว่าการทดสอบที่ฉันเขียนคือการทดสอบการรวม / การยอมรับไม่ใช่การทดสอบหน่วยเลยและฉันมีส่วนสำคัญของแอปพลิเคชันที่ไม่ได้รับการทดสอบอย่างมีประสิทธิภาพ ฉันต้องการแก้ไขโดยเร็วที่สุดนี้ นี่คือปัญหาของฉัน สคีมาของฉันนั้นมีความสัมพันธ์ลึกซึ้งและมุ่งเน้นไปที่เวลาอย่างมากทำให้วัตถุต้นแบบของฉันมีความสัมพันธ์ภายในสูงและมีสถานะเป็นจำนวนมาก แบบสอบถามวิธีการแบบจำลองของฉันจำนวนมากขึ้นอยู่กับช่วงเวลาและฉันมีจำนวนมากauto_now_addเกิดขึ้นในเขตข้อมูลที่ประทับเวลา ดังนั้นลองใช้วิธีที่มีลักษณะเช่นนี้: def summary(self, startTime=None, endTime=None): # ... logic to assign a proper start and end time # if none was provided, probably using datetime.now() objects = self.related_model_set.manager_method.filter(...) return sum(object.key_method(startTime, endTime) for object in objects) วิธีใดวิธีหนึ่งในการทดสอบบางอย่างเช่นนี้ ที่นี่ฉันอยู่ไกล เกิดขึ้นกับฉันว่าวัตถุประสงค์การทดสอบหน่วยควรได้รับพฤติกรรมเยาะเย้ยby key_methodบนข้อโต้แย้งของมันคือการsummaryกรอง / รวมอย่างถูกต้องเพื่อให้ได้ผลลัพธ์ที่ถูกต้อง? …

2
การแคชแบบใช้คีย์ทำงานอย่างไร
ฉันเพิ่งอ่านบทความในบล็อก 37Signalsและฉันก็สงสัยว่าพวกเขาได้รับรหัสแคชอย่างไร ทุกอย่างดีและดีมีคีย์แคชที่มีการประทับเวลาของวัตถุ (ซึ่งหมายความว่าเมื่อคุณอัปเดตวัตถุแคชจะไม่ถูกต้อง) แต่คุณจะใช้แคชคีย์ในเทมเพลตได้อย่างไรโดยไม่ทำให้ DB มีผลกระทบต่อวัตถุที่คุณพยายามดึงข้อมูลจากแคช โดยเฉพาะสิ่งนี้มีผลต่อความสัมพันธ์แบบหนึ่งต่อหลายอย่างที่คุณแสดงความคิดเห็นของโพสต์อย่างไร ตัวอย่างใน Django: {% for comment in post.comments.all %} {% cache comment.pk comment.modified %} <p>{{ post.body }}</p> {% endcache %} {% endfor %} การแคชใน Rails นั้นแตกต่างจากการร้องขอเพื่อ memcached หรือไม่ (ฉันรู้ว่าพวกเขาแปลงแคชคีย์ของคุณเป็นอย่างอื่น) พวกเขายังแคชรหัสแคชหรือไม่

2
การเรียนรู้ Django ตามตัวอย่าง [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Software Engineering Stack Exchange ปิดให้บริการใน5 ปีที่ผ่านมา คำตอบของคำถามนี้เป็นความพยายามของชุมชน แก้ไขคำตอบที่มีอยู่เพื่อปรับปรุงโพสต์นี้ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ เมื่อฉันเริ่มเรียนรู้เกี่ยวกับ Android เป็นครั้งแรกฉันพบวิดีโอ YouTube ที่ยอดเยี่ยมจาก Marakanaที่ก้าวผ่านการสร้างโคลนของ Twitter มันทำให้ฉันก้าวผ่านทุกขั้นตอนและอธิบายให้ฉันรู้พื้นฐานเกี่ยวกับห้องสมุดทั่วไปแนวทางปฏิบัติที่ดีที่สุดทรัพยากรและอื่น ๆ การมองไหล่ของผู้เชี่ยวชาญขณะที่สร้างแอปที่ใช้งานได้จริงเป็นวิธีการเรียนรู้ที่ดีที่สุดสำหรับฉัน ยิ่งกว่าสิ่งอื่นใดมันทำให้ฉันมีโครงกระดูกที่ฉันสามารถสร้างได้ จากนั้นฉันสามารถทำการวิจัยต่อไปและรู้ว่าจะถามคำถามใด ตอนนี้ฉันกำลังมองหาบางสิ่งที่คล้ายกับ Django แน่นอนฉันจะตรวจสอบออกมากวดวิชาอย่างเป็นทางการและDjango หนังสือ อดีตยืดหยุ่นกล้ามเนื้อ Django บางส่วน แต่ไม่ได้เดินผ่านแอพแบบเต็ม แอปหลังนี้สร้างได้ดีกว่า แต่แอพที่สร้างขึ้นนั้นเรียบง่ายมากและเมื่อถึงระดับที่สูงกว่าการสอนจะหยุดลงและกลับไปเป็นข้อมูลโค้ดสั้น ๆ และคำอธิบายคล้ายเอกสาร การตรวจสอบว่า Amazon ไม่ได้ให้กำลังใจอย่างมาก หนังสือ Django ทั่วไปเล่มล่าสุดออกวางตลาดเมื่อเกือบสองปีที่แล้วและครอบคลุมเฉพาะ v1.0 เพื่อความเป็นธรรมฉันเข้าใจว่าอาจเป็นเพราะเอกสารออนไลน์นั้นยอดเยี่ยม แต่อีกครั้งฉันกำลังมองหาเอกสารแนะนำ ฉันได้สัมผัสกับประกายแห่งความตื่นเต้นเมื่อฉันได้พบโครงการ Django เชิงปฏิบัติซึ่งฟังดูเหมือนสิ่งที่ฉันกำลังมองหา …
10 learning  django 

3
กำลังจัดเก็บเนื้อหาของไซต์ที่สามารถแก้ไขได้?
เรามีเว็บไซต์ที่ใช้ Django ซึ่งเราต้องการสร้างเนื้อหา (ข้อความและตรรกะทางธุรกิจเช่นแผนการกำหนดราคา) ที่สามารถแก้ไขได้อย่างง่ายดายภายในบริษัท ดังนั้นเราจึงตัดสินใจจัดเก็บไว้นอกรหัสเบส โดยปกติแล้วเหตุผลดังต่อไปนี้: เป็นสิ่งที่คนที่ไม่ใช่ด้านเทคนิคต้องการแก้ไข ตัวอย่างหนึ่งคือการเขียนคำโฆษณาสำหรับเว็บไซต์ - โปรแกรมเมอร์จัดทำแม่แบบพร้อมข้อความที่เป็นค่าเริ่มต้นเป็น "Lorem ipsum ... " และเนื้อหาจริงจะถูกแทรกในภายหลังไปยังฐานข้อมูล เป็นสิ่งที่เราต้องการที่จะสามารถเปลี่ยนแปลงได้อย่างรวดเร็วโดยไม่จำเป็นต้องปรับใช้รหัสใหม่ (ซึ่งปัจจุบันเราทำสองครั้งต่อสัปดาห์) ตัวอย่างจะเป็นคุณสมบัติที่มีให้กับลูกค้าในระดับราคาที่แตกต่างกัน แทนที่จะอ่านโค้ดเหล่านี้เราอ่านจากฐานข้อมูล โซลูชันที่อธิบายมีความยืดหยุ่น แต่มีสาเหตุบางอย่างที่ฉันไม่ชอบ เพราะเนื้อหาจะต้องมีการอ่านข้อมูลจากฐานข้อมูลมีค่าใช้จ่ายในการปฏิบัติงาน เราลดขนาดลงโดยใช้รูปแบบแคช แต่สิ่งนี้ยังเพิ่มความซับซ้อนให้กับระบบ นักพัฒนาซอฟต์แวร์ที่เรียกใช้รหัสภายในดูระบบในสถานะที่แตกต่างกันอย่างมากเมื่อเทียบกับวิธีการทำงานกับการผลิต การทดสอบอัตโนมัติยังใช้ระบบในสถานะที่แตกต่างกัน สถานการณ์เช่นการทดสอบคุณลักษณะใหม่บนเซิร์ฟเวอร์ staging ก็มีความยุ่งยากเช่นกันหากเซิร์ฟเวอร์ staging ไม่มีสำเนาของฐานข้อมูลล่าสุดอาจแตกต่างจากการผลิตโดยไม่คาดคิด เราสามารถลดได้โดยการยอมรับสถานะใหม่ไปยังที่เก็บเป็นครั้งคราว (เช่นโดยการเพิ่มการย้ายข้อมูล) แต่ดูเหมือนว่าวิธีการที่ผิด ใช่ไหม? ความคิดใดวิธีที่ดีที่สุดในการแก้ปัญหาเหล มีวิธีที่ดีกว่าสำหรับการจัดการเนื้อหาที่ฉันมองเห็นหรือไม่?

3
โดยทั่วไปแล้วเราควรพัฒนาห้องสมุดลูกค้าสำหรับบริการ REST เพื่อช่วยป้องกันการแตกของ API หรือไม่
เรามีโครงการที่รหัส UI จะได้รับการพัฒนาโดยทีมเดียวกัน แต่ในภาษาอื่น (Python / Django) จากชั้นบริการ (REST / Java) รหัสสำหรับแต่ละชั้นออกจากที่เก็บรหัสที่แตกต่างกันและสามารถติดตามรอบการเปิดตัวที่แตกต่างกัน ฉันพยายามหากระบวนการที่จะป้องกัน / ลดการเปลี่ยนแปลงในเลเยอร์บริการจากมุมมองของเลเยอร์ UI ฉันคิดว่าจะเขียนการทดสอบการรวมที่ระดับเลเยอร์ UI ที่เราจะเรียกใช้เมื่อใดก็ตามที่เราสร้าง UI หรือเลเยอร์บริการ (เรากำลังใช้ Jenkins เป็นเครื่องมือ CI ของเราในการสร้างรหัสซึ่งอยู่ใน repos Git สอง) และถ้า มีความล้มเหลวดังนั้นบางสิ่งในเลเยอร์บริการแตกและการยอมรับไม่ยอมรับ มันจะเป็นความคิดที่ดี (มันเป็นวิธีปฏิบัติที่ดีที่สุดหรือไม่) เพื่อให้ผู้พัฒนาเลเยอร์บริการสร้างและบำรุงรักษาไลบรารีไคลเอ็นต์สำหรับบริการ REST ที่มีอยู่ในเลเยอร์ UI ที่พวกเขาจะอัปเดตเมื่อใดก็ตามที่มีการเปลี่ยนแปลง Service API ของพวกเขา น่าจะเป็นไปได้ว่าเราจะได้ประโยชน์จาก API ที่พิมพ์แบบคงที่ซึ่งรหัส UI นั้นสร้างขึ้นมา หาก API ของไลบรารีไคลเอ็นต์เปลี่ยนแปลงรหัส UI …
9 rest  django 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.