Tôi muốn thêm cột vào bảng cơ sở dữ liệu nhưng tôi không muốn sửa đổi mô-đun bên thứ 3 trong trường hợp tôi cần/quyết định nâng cấp mô-đun trong tương lai. Có cách nào tôi có thể thêm lĩnh vực này trong mã của tôi để với xây dựng mới tôi không phải thêm các lĩnh vực bằng tay?Django - cách mở rộng mô hình bên thứ 3 mà không sửa đổi
9
A
Trả lời
9
Bạn có thể sử dụng ModelName.add_to_class (hoặc .contribute_to_class), nhưng nếu bạn đã chạy syncdb, thì không có cách nào để tự động thêm nó vào cột bạn cần.
Đối với mã có thể duy trì, bạn có thể muốn mở rộng bằng cách sắp xếp mô hình mong muốn trong ứng dụng của riêng mình và sử dụng thứ gì đó như nam để xử lý di chuyển cơ sở dữ liệu hoặc chỉ sử dụng OneToOneField và có mô hình liên quan UserProfile là auth.User).
0
Xem qua các lớp thừa kế và trừu tượng mô hình Django http://docs.djangoproject.com/en/dev/topics/db/models/#multi-table-inheritance
Các vấn đề liên quan
- 1. SVG: mô hình bên trong không mở rộng quy mô không hoạt động?
- 2. Tôi làm cách nào để sửa đổi mã xem quản trị viên cho ứng dụng của bên thứ 3?
- 3. django: Thay đổi giá trị mặc định cho lớp mô hình mở rộng
- 4. Mở rộng hình ảnh bên trong DIV
- 5. Làm cách nào để mở rộng mô hình Tập đoàn Django?
- 6. Làm cách nào để mở rộng UIImage mà không làm phẳng bất cứ thứ gì?
- 7. Thêm chức năng vào Django FlatPages mà không thay đổi Django App gốc
- 8. Django: Thay đổi mô hình mà không xóa tất cả dữ liệu?
- 9. cách ngăn không cho chiều rộng ô mở rộng khi chỉnh sửa xong trong UITableView
- 10. cách thay đổi chức năng trong thư viện của bên thứ 3 hiện có trong python
- 11. Làm cách nào để biết phiên bản mô hình django đã được sửa đổi?
- 12. Django - vô hiệu hóa chỉnh sửa mô hình
- 13. MapView mà không mở rộng MapActivity
- 14. mở rộng urlize trong django
- 15. Thông báo lỗi mở rộng Django
- 16. Làm thế nào để bạn mở rộng mô hình Site trong django?
- 17. ActiveSupport :: Quan tâm và mở rộng mô hình mongoid
- 18. Sửa đổi ValueType từ phương thức mở rộng?
- 19. Làm thế nào để mở rộng mô hình trên mức serializer với django-nghỉ ngơi-framework
- 20. lớp bên trong mở rộng
- 21. Có danh sách thư viện Python 3 bên thứ 3 không?
- 22. Làm thế nào để mở rộng một mô hình từ mô hình tùy chỉnh trong CodeIgniter
- 23. Mở rộng Nhiều mô hình trong Codeigniter 2
- 24. QT nhận được độ phân giải màn hình mà không cần màn hình mở rộng
- 25. Sửa bảng auth_permission sau khi đổi tên một mô hình ở Django
- 26. Làm thế nào để cài đặt mô-đun bên thứ 3 cho postgres pl/python?
- 27. mẫu django: bao gồm và mở rộng
- 28. Thực hiện một thời gian sửa đổi bảng mô hình trong Django?
- 29. Sử dụng Mô hình và Biểu mẫu bên ngoài Django?
- 30. Cách mở rộng lớp css