Điều này có vẻ như nó phải đơn giản nhưng tôi phải làm điều gì đó sai trái. Tôi đã mở rộng các mẫu quản trị cho các ứng dụng riêng lẻ trước đây, nhưng đây là lần đầu tiên tôi thử mở rộng để sửa đổi một cái gì đó trên bảng.Làm cách nào để mở rộng chính xác mẫu django admin/base.html?
Tôi muốn thay đổi màu của văn bản trợ giúp trên toàn bộ quản trị viên, vì vậy tôi muốn mở rộng khối extrastyle của mẫu base.html.
Vì vậy, trong thư mục mẫu chính của tôi tôi đã tạo admin/base.html với mã này trong đó:
{% extends 'admin/base.html' %}
{% block extrastyle %}
{# Changing the color of the help text across the entire admin #}
<style>
.help, p.help {
font-size: 10px !important;
color: #f00;
}
</style>
{% endblock %}
Bây giờ, khi tôi cố gắng và truy cập vào admin, máy chủ hoàn toàn bị treo với 'xe buýt 10' lỗi. Tôi tin rằng điều này là bởi vì nó đang cố gắng mở rộng chính nó. Vì Django trông đầu tiên trong các thư mục mẫu ứng dụng của tôi, {% extend 'admin/base.html'%} tự tìm thấy đầu tiên và thế giới phát nổ.
Tuy nhiên, nếu tôi thử đặt html cơ sở ở bất kỳ nơi nào khác thì nó không hoạt động. Nếu tôi đặt nó vào một trong các ứng dụng của tôi nó chỉ hoạt động cho ứng dụng đó, nhưng nếu tôi đặt nó ở bất cứ nơi nào khác thì nó chỉ bị bỏ qua.
Từ hiểu biết của tôi, đó là phương pháp hay nhất để mở rộng thay vì ghi đè lên các mẫu django, vì vậy tôi muốn làm việc này. Tuy nhiên, nếu cách duy nhất tôi có thể làm là bằng cách ghi đè nó, thì đó là lộ trình tôi sẽ thực hiện.
Ahh, đó là những gì tôi đang tìm kiếm. Cảm ơn bạn! –