Django, Python

Phân biệt Union, Intersection and Difference trong phương thức trả về QuerySet

Bảng MyModel= { 1: ‘A’, 2: ‘B’, 3: ‘C’, 4: ‘D’, 1: ‘E’} Thực hiện truy vấn lấy dữ liệu: q1 = MyModel.objects.all() -> <QuerySet [<MyModel: A>, <MyModel: B>, <MyModel: C>, <MyModel: D>, <MyModel: E>]> q2 = MyModel.objects.filter(name__in=(‘A’,’B’)) -> <QuerySet [<MyModel: A>, <MyModel: B>]> q3 = MyModel.objects.filter(name__in=(‘C’,’D’)) -> <QuerySet [<MyModel: C>, <MyModel: D>]> – Union() sẽ trả kết hợp các kết quả trong…

Tiếp tục đọc

Django, Python

Kiểm tra quyền trong ModelAdmin

Trong Django có các hàm kiểm tra: – ModelAdmin.has_view_permission(request, obj=None) Trả về True nếu đối tượng (obj) được phép xem, ngược lại trả về False. – ModelAdmin.has_add_permission(request, obj=None) Trả về True nếu được phép thêm đối tượng (obj), ngược lại trả về False. – ModelAdmin.has_change_permission(request, obj=None) Trả về True nếu được phép chỉnh sửa đối tượng (obj), ngược lại trả về False. – ModelAdmin.has_delete_permission(request, obj=None) Trả về…

Tiếp tục đọc

Django, Python

Xử lí khi có sự khác biệt các fields trong Form Admin

Trường hợp Bảng ae_fonttype có các trường(id, name, order, font_type) Khi hiển thị(view) cần có các trường (name, font_type, font_list) font_list: là danh sách các font có cùng font_type được lưu ở ae_fonttype_font_list Khi thêm bản ghi mới(add) chỉ có(name, font_type) Model(models/font_type.py): class FontType(models.Model): class Meta: verbose_name = ‘フォントタイプ’ verbose_name_plural = ‘b.1 フォントタイプ一覧’ ordering = [‘order’] name = models.CharField(verbose_name=”名前”, null=True, blank=True, max_length=32)…

Tiếp tục đọc

Django, Python

Vô hiệu hóa Chrome tự động điền input password

Việc điền tự động của chrome có thể gây ảnh hưởng tới 1 input khác(tự động điền giá trị) khi có 1 input type=”password” Thay thành autocomplete=”new-password” trong trường hợp autocomplete=”off” và autocomplete=”false” không sử dụng được trong input type=”password”