Как сделать поле модели гиперссылкой в моделях Django

-2
class Trip(models.Model):
    trip_number = models.CharField(
        _("Trip Number"), max_length=128, db_index=True, unique=True, 
    blank=True)

что я ищу, чтобы сделать этот trip_number ссылкой на гиперссылку.

  • 0
    Гиперссылка на где?
  • 0
    Я сделал это поле как гиперссылку и должен использовать в другой модели и должен отображать на уровне детализации в админке (не в list_display)
Теги:
django-models

2 ответа

1
Лучший ответ

Я думаю, вы можете использовать URLField для хранения гиперссылок, так как этот тип поля использует URLValidator. URLField - это подкласс CharField, поэтому вы можете использовать max_length.

class Trip(models.Model):
    trip_number = models.URLField(
        _("Trip Number"), 
        max_length=128, 
        db_index=True, 
        unique=True, 
        blank=True
    )
0

в администраторе django вы можете использовать функцию для отображения значения в качестве ссылки. Вот пример:

@admin.register(models.Trip)
class TripAdmin(admin.ModelAdmin):
    list_display = ('id', 'trip_number', 'trip_link')

    def trip_link(self, obj):
        if obj.trip_number:
            return "<a href='%s'>Link</a>" % obj.trip_number
        else:
            return ''

Ещё вопросы

Сообщество Overcoder
Наверх
Меню