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

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

8
จะเรียกใช้ฐานข้อมูลทดสอบของ Django เฉพาะในหน่วยความจำได้อย่างไร
การทดสอบหน่วย Django ของฉันใช้เวลาดำเนินการนานดังนั้นฉันจึงกำลังมองหาวิธีที่จะเร่งความเร็วนั้น ฉันกำลังพิจารณาติดตั้งSSDแต่ฉันรู้ว่ามีข้อเสียเช่นกัน แน่นอนว่ามีบางสิ่งที่ฉันสามารถทำได้กับโค้ดของฉัน แต่ฉันกำลังมองหาการแก้ไขโครงสร้าง แม้แต่การเรียกใช้การทดสอบเพียงครั้งเดียวก็ทำได้ช้าเนื่องจากต้องสร้างฐานข้อมูลใหม่ / ย้ายไปทางทิศใต้ทุกครั้ง นี่คือความคิดของฉัน ... เนื่องจากฉันรู้ว่าฐานข้อมูลการทดสอบมักจะค่อนข้างเล็กทำไมฉันไม่สามารถกำหนดค่าระบบให้เก็บฐานข้อมูลการทดสอบทั้งหมดไว้ใน RAM ได้เสมอไป อย่าแตะดิสก์เลย ฉันจะกำหนดค่านี้ใน Django ได้อย่างไร ฉันต้องการใช้MySQL ต่อไปเพราะนั่นคือสิ่งที่ฉันใช้ในการผลิต แต่ถ้าSQLite 3 หรืออย่างอื่นทำให้สิ่งนี้ง่ายฉันจะไปทางนั้น SQLite หรือ MySQL มีตัวเลือกให้ทำงานในหน่วยความจำทั้งหมดหรือไม่? ควรกำหนดค่าดิสก์ RAM แล้วกำหนดค่าฐานข้อมูลทดสอบเพื่อจัดเก็บข้อมูลที่นั่น แต่ฉันไม่แน่ใจว่าจะบอกให้ Django / MySQL ใช้ไดเร็กทอรีข้อมูลอื่นสำหรับฐานข้อมูลบางอย่างได้อย่างไรโดยเฉพาะอย่างยิ่งเนื่องจากมันถูกลบไปเรื่อย ๆ และสร้างขึ้นใหม่ในแต่ละครั้ง (ฉันใช้ Mac FWIW)

7
ปิดใช้งานเมธอดใน ViewSet, django-rest-framework
ViewSets มีวิธีการอัตโนมัติในการแสดงรายการเรียกค้นสร้างอัปเดตลบ ... ฉันต้องการปิดการใช้งานบางส่วนและวิธีแก้ปัญหาที่ฉันคิดขึ้นมานั้นอาจไม่ใช่วิธีที่ดีนักเนื่องจากOPTIONSยังคงระบุว่าได้รับอนุญาต มีความคิดเกี่ยวกับวิธีการทำอย่างไรให้ถูกต้อง? class SampleViewSet(viewsets.ModelViewSet): queryset = api_models.Sample.objects.all() serializer_class = api_serializers.SampleSerializer def list(self, request): return Response(status=status.HTTP_405_METHOD_NOT_ALLOWED) def create(self, request): return Response(status=status.HTTP_405_METHOD_NOT_ALLOWED)

4
จะรับ ID ผู้ใช้ของผู้ใช้ที่ล็อกอินใน Django ได้อย่างไร
จะรับ ID ผู้ใช้ที่ล็อกอินอยู่ในปัจจุบันได้อย่างไร? ในmodels.py: class Game(models.model): name = models.CharField(max_length=255) owner = models.ForeignKey(User, related_name='game_user', verbose_name='Owner') ในviews.py: gta = Game.objects.create(name="gta", owner=?)

5
วิธีกรองวัตถุเพื่อนับคำอธิบายประกอบใน Django
ลองพิจารณาโมเดล Django แบบง่ายๆEventและParticipant: class Event(models.Model): title = models.CharField(max_length=100) class Participant(models.Model): event = models.ForeignKey(Event, db_index=True) is_paid = models.BooleanField(default=False, db_index=True) ง่ายต่อการใส่คำอธิบายประกอบการสืบค้นเหตุการณ์ด้วยจำนวนผู้เข้าร่วมทั้งหมด: events = Event.objects.all().annotate(participants=models.Count('participant')) วิธีการใส่คำอธิบายประกอบกับจำนวนผู้เข้าร่วมที่กรองโดยis_paid=True? ฉันต้องการสอบถามเหตุการณ์ทั้งหมดโดยไม่คำนึงถึงจำนวนผู้เข้าร่วมเช่นฉันไม่จำเป็นต้องกรองตามผลลัพธ์ที่มีคำอธิบายประกอบ หากมี0ผู้เข้าร่วมก็โอเคฉันแค่ต้องการ0คำอธิบายประกอบ เช่นจากเอกสารไม่ได้ทำงานที่นี่เพราะมันไม่รวมวัตถุจากแบบสอบถามแทน annotating 0พวกเขาด้วย ปรับปรุง Django 1.8 มีคุณสมบัตินิพจน์เงื่อนไขใหม่ดังนั้นตอนนี้เราสามารถทำได้ดังนี้: events = Event.objects.all().annotate(paid_participants=models.Sum( models.Case( models.When(participant__is_paid=True, then=1), default=0, output_field=models.IntegerField() ))) อัปเดต 2. Django 2.0 มีคุณสมบัติการรวมเงื่อนไขใหม่ดูคำตอบที่ยอมรับด้านล่าง

2
ฉันจะอ้างอิงตัวแปรการตั้งค่า Django ใน models.py ของฉันได้อย่างไร
นี่เป็นคำถามเริ่มต้นมาก แต่ฉันนิ่งงัน ฉันจะอ้างอิงตัวแปรการตั้งค่า Django ใน model.py ของฉันได้อย่างไร NameError: name 'PRIVATE_DIR' is not defined ยังได้ลองสิ่งอื่น ๆ อีกมากมายรวมถึง settings.PRIVATE_DIR settings.py: PRIVATE_DIR = '/home/me/django_projects/myproject/storage_dir' models.py: # Problem is here. from django.core.files.storage import FileSystemStorage fs = FileSystemStorage(location=PRIVATE_DIR) class Customer(models.Model): lastName = models.CharField(max_length=20) firstName = models.CharField(max_length=20) image = models.ImageField(storage=fs, upload_to='photos', blank=True, null=True) อะไรคือวิธีที่ถูกต้องในการทำเช่นนี้?

5
จะรับ Request.User ใน Django-Rest-Framework serializer ได้อย่างไร?
เคยลองทำแบบนี้แล้วไม่ได้ผล class PostSerializer(serializers.ModelSerializer): class Meta: model = Post def save(self): user = self.context['request.user'] title = self.validated_data['title'] article = self.validated_data['article'] ฉันต้องการวิธีในการเข้าถึง request.user จากคลาส Serializer ของฉัน

30
Django หยุดทำงานกับ RuntimeError: populate () ไม่ได้ reentrant
ฉันได้พัฒนาเว็บแอปพลิเคชัน Django ที่ติดตั้งบนเซิร์ฟเวอร์ Apache ด้วย WSGI และทุกอย่างเป็นไปอย่างราบรื่น วันนี้ฉันได้ทำการเปลี่ยนแปลงเล็กน้อยในแอปของฉันเพื่อadmin.pyพยายามปรับแต่งอินเทอร์เฟซผู้ดูแลระบบ Django ในตัวและในตอนแรกเกิดข้อผิดพลาดทางไวยากรณ์ (วงเล็บที่ไม่ปิด) นั่นหมายความว่าเมื่อฉันแตะwsgi.pyและโหลดโค้ด (ฉันมี WSGI ที่ทำงานในโหมด daemon บนโฮสต์เสมือนของฉัน) เว็บไซต์ของฉันถูกแทนที่ด้วย Internal Server Error เนื่องจาก WSGI หยุดทำงานเมื่อเกิดข้อผิดพลาดทางไวยากรณ์ ดังนั้นฉันจึงแก้ไขข้อผิดพลาดทางไวยากรณ์ตรวจสอบว่าฉันไม่มีอะไรอีกmanage.py checkแล้วและแตะwsgi.pyเพื่อปรับใช้ใหม่ แต่เว็บไซต์ของฉันยังคงแสดง Internal Server Error! ตรวจสอบบันทึก Apache นี่คือสิ่งที่ฉันเห็น: [Sun Nov 23 13:52:46 2014] [info] mod_wsgi (pid=19093): Create interpreter 'quotes.cs.cornell.edu|'. [Sun Nov 23 13:52:46 2014] [info] …

1
list_display - ไอคอนบูลีนสำหรับวิธีการ
เมื่อกำหนดอาร์เรย์ list_display สำหรับModelAdminคลาสถ้า a BooleanFieldหรือNullBooleanFieldได้รับ UI จะใช้ไอคอนที่ดูดีแทนข้อความ True / False ในคอลัมน์ หากมีการให้วิธีการที่ส่งคืนบูลีนมันก็เพียงแค่พิมพ์ True / False ออกมา มีวิธีทำให้ใช้ไอคอนสวยสำหรับวิธีบูลีนหรือไม่?

4
Django Cookies ฉันจะตั้งค่าได้อย่างไร?
ฉันมีเว็บไซต์ที่แสดงเนื้อหาที่แตกต่างกันตามสถานที่ที่ผู้เยี่ยมชมเลือก เช่น: ผู้ใช้ป้อน 55812 เป็น zip ฉันรู้ว่าเมืองและพื้นที่ใด lat / long นั่นคือและให้เนื้อหาที่เกี่ยวข้องกับพื้นที่นั้น คำถามของฉันคือฉันจะเก็บสิ่งนี้ไว้ในคุกกี้ได้อย่างไรเพื่อที่เมื่อพวกเขาส่งคืนมาไม่จำเป็นต้องป้อนรหัสไปรษณีย์เสมอไป ฉันเห็นมันดังนี้: ตั้งค่าคุกกี้ถาวรตามพื้นที่ เมื่อพวกเขากลับมาอ่านคุกกี้ให้คว้ารหัสไปรษณีย์ ส่งคืนเนื้อหาตามรหัสไปรษณีย์ในคุกกี้ ดูเหมือนว่าฉันไม่พบข้อมูลที่ชัดเจนเกี่ยวกับการตั้งค่าคุกกี้ ความช่วยเหลือใด ๆ ที่ได้รับการชื่นชมอย่างมาก
123 django  cookies 

6
ฉันจะนำเข้าข้อยกเว้น Django DoesNotExist ได้อย่างไร
ฉันกำลังพยายามสร้าง UnitTest เพื่อตรวจสอบว่าวัตถุถูกลบไปแล้ว from django.utils import unittest def test_z_Kallie_can_delete_discussion_response(self): ...snip... self._driver.get("http://localhost:8000/questions/3/want-a-discussion") self.assertRaises(Answer.DoesNotExist, Answer.objects.get(body__exact = '<p>User can reply to discussion.</p>')) ฉันได้รับข้อผิดพลาดเรื่อย ๆ : DoesNotExist: Answer matching query does not exist.

3
Django admin: วิธีจัดเรียงตามฟิลด์ list_display แบบกำหนดเองที่ไม่มีฟิลด์ฐานข้อมูล
# admin.py class CustomerAdmin(admin.ModelAdmin): list_display = ('foo', 'number_of_orders') # models.py class Order(models.Model): bar = models.CharField[...] customer = models.ForeignKey(Customer) class Customer(models.Model): foo = models.CharField[...] def number_of_orders(self): return u'%s' % Order.objects.filter(customer=self).count() ฉันจะจัดเรียงลูกค้าได้อย่างไรขึ้นอยู่กับว่าnumber_of_ordersพวกเขามี? admin_order_fieldไม่สามารถใช้คุณสมบัติที่นี่ได้เนื่องจากต้องใช้ฟิลด์ฐานข้อมูลเพื่อจัดเรียง เป็นไปได้หรือไม่เนื่องจาก Django อาศัยฐานข้อมูลพื้นฐานในการจัดเรียง การสร้างฟิลด์รวมเพื่อให้มีจำนวนคำสั่งซื้อดูเหมือนจะเกินความจำเป็น สิ่งที่น่าสนุก: หากคุณเปลี่ยน url ด้วยตนเองในเบราว์เซอร์เพื่อจัดเรียงในคอลัมน์นี้ - มันทำงานได้ตามที่คาดไว้!

5
การเชื่อมต่อ Django กับ PostgreSQL:“ การพิสูจน์ตัวตนแบบเพียร์ล้มเหลว”
OperationalError at /admin/ FATAL: Peer authentication failed for user "myuser" นี่เป็นข้อผิดพลาดที่ฉันได้รับเมื่อพยายามเข้าสู่ไซต์ผู้ดูแลระบบ Django ของฉัน ฉันใช้ฐานข้อมูล MySQL แล้วไม่มีปัญหา ฉันยังใหม่กับ PostgreSQL แต่ตัดสินใจเปลี่ยนเพราะโฮสต์ที่ฉันวางแผนจะใช้สำหรับโปรเจ็กต์นี้ในท้ายที่สุดไม่มี MySQL ดังนั้นฉันคิดว่าฉันสามารถทำตามขั้นตอนการติดตั้ง PostgreSQL เรียกใช้syncdbและตั้งค่าทั้งหมด ปัญหาคือดูเหมือนว่าฉันไม่สามารถให้แอปเชื่อมต่อกับฐานข้อมูลได้ ฉันสามารถล็อกอินเข้าสู่ PostgreSQL ผ่านทางบรรทัดคำสั่งหรือแอพเดสก์ท็อปที่ดาวน์โหลดมา แค่ไม่ได้อยู่ในสคริปต์ นอกจากนี้ฉันสามารถใช้manage.py shellเพื่อเข้าถึงฐานข้อมูลได้ดี ความคิดใด ๆ ?
122 django  postgresql 

5
Django-DB-Migrations: ไม่สามารถแก้ไขตารางได้เนื่องจากมีเหตุการณ์ทริกเกอร์ที่รอดำเนินการ
ฉันต้องการลบ null = True จาก TextField: - footer=models.TextField(null=True, blank=True) + footer=models.TextField(blank=True, default='') ฉันสร้างการย้ายสคีมา: manage.py schemamigration fooapp --auto เนื่องจากคอลัมน์ส่วนท้ายบางคอลัมน์มีNULLฉันจึงได้รับสิ่งนี้errorหากฉันเรียกใช้การย้ายข้อมูล: django.db.utils.IntegrityError: คอลัมน์ "footer" มีค่า null ฉันเพิ่มสิ่งนี้ในการย้ายสคีมา: for sender in orm['fooapp.EmailSender'].objects.filter(footer=None): sender.footer='' sender.save() ตอนนี้ฉันได้รับ: django.db.utils.DatabaseError: cannot ALTER TABLE "fooapp_emailsender" because it has pending trigger events เกิดอะไรขึ้น?

9
ฉันจะแปลง Django QuerySet เป็นรายการคำสั่งได้อย่างไร
ฉันจะแปลง Django QuerySet เป็นรายการคำสั่งได้อย่างไร ฉันไม่พบคำตอบสำหรับเรื่องนี้ดังนั้นฉันจึงสงสัยว่าฉันไม่มีฟังก์ชันตัวช่วยทั่วไปที่ทุกคนใช้หรือไม่
122 python  django 

10
รับฟิลด์ของโมเดลใน Django
ด้วยโมเดล Django ฉันกำลังพยายามแสดงรายการฟิลด์ทั้งหมด ฉันเคยเห็นตัวอย่างการทำเช่นนี้โดยใช้แอตทริบิวต์แบบจำลอง _meta แต่เครื่องหมายขีดล่างข้างหน้าเมตาไม่ได้ระบุว่าแอตทริบิวต์ _meta เป็นแอตทริบิวต์ส่วนตัวและไม่ควรเข้าถึงโดยตรงหรือไม่ ... เนื่องจากรูปแบบของ _meta อาจเปลี่ยนแปลงได้ในอนาคตและไม่ใช่ API ที่เสถียร? _meta เป็นข้อยกเว้นของกฎนี้หรือไม่ มีความเสถียรและพร้อมใช้งานหรือไม่หรือถือว่าเป็นการปฏิบัติที่ไม่ดีในการเข้าถึง หรือมีฟังก์ชั่นหรือวิธีอื่นในการวิเคราะห์ฟิลด์ของโมเดลโดยไม่ใช้แอตทริบิวต์ _meta หรือไม่? ด้านล่างนี้คือรายการลิงก์บางส่วนที่แสดงวิธีการดำเนินการโดยใช้แอตทริบิวต์ _meta คำแนะนำใด ๆ ที่ชื่นชมมาก django object get / set ฟิลด์ http://www.djangofoo.com/80/get-list-model-fields วิธีการพิจารณาฟิลด์โมเดล django?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.