Как создать модель multilink django? - PullRequest
0 голосов
/ 27 апреля 2020

если вы поможете, я буду вам очень благодарен!

В общем, я решил объединить знания django, создав свой собственный проект, и решил, что я внедряю многоканальный сервис, такой как как «таплинк» и так далее, их было много.

Только что запустился и сразу запутался.

Суть вопроса:

Мне нужно отобразить в В шаблоне все ссылки, которые пользователь выбрал и решил добавить. Все было бы хорошо, но каждая ссылка имеет свои уникальные css классы и уникальные атрибуты href.

Сначала я решил создать модель:

class Links(models.Model):
    # messengers
    whatsapp = models.CharField(max_length=50, blank=True)
    telegram = models.CharField(max_length=50, blank=True)
    viber = models.CharField(max_length=50, blank=True)
    fbmessenger = models.CharField(max_length=50, blank=True)
    skype = models.CharField(max_length=50, blank=True)

, но понял, что это неправильно .

Затем были созданы другие модели, например:

class InstagramModel(models.Model):
    #title = models.CharField(max_length=100)
    help_text = "Введите ваш логин (без @)"
    login = models.CharField(max_length=100)
    choose = models.BooleanField(default=False)
    style = models.TextField(default='fab fa-instagram instagram')
    url = models.URLField(default='https://www.instagram.com/')

class WhatsappModel(models.Model):
    #title = models.CharField(max_length=100)
    help_text = "Введите ваш номер телефона начиная с цифры 7 или 8 (без +7)"
    login = models.CharField(max_length=100)
    choose = models.BooleanField(default=False)
    style = models.TextField(default='fab fa-whatsapp whatsapp')
    url = models.URLField(default='https://wa.me/')

, вот файл вида

def card_links (request):
    links = Links.objects.all ()
    whatsapp = WhatsappModel.objects.all ()
    instagram = InstagramModel.objects.all ()
    context = {'whatsapp': whatsapp,'instagram': instagram,}
    return render (request, 'cardapp / test.html', context)

и html файл

{% for link in whatsapp %}
{% if link.choose == True %}
<a href="{‌{ link.url }}{‌{ link.login }}" class="{‌{ link.style }}" target="_blank"> 
{‌{link.login }}</a>
{% endif %}
{% endfor %}

Все отображается правильно, но только одна ссылка. Мне нужно, чтобы всего, что выбрал пользователь, их может быть 22 штуки со всеми социальными сетями и мессенджерами.

Как это реализовать? Я искал весь Inte rnet, но не нашел ничего подобного.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...