Как получить текст внутри тега в views.py django через действие формы?

#python #django

#python #django

Вопрос:

У меня есть список в моей функции в views.py и отобразил их на HTML-странице в виде тегов. Когда я нажимаю на любой из тегов, мне нужно получить этот текст тегов в другой функции в views.py когда форма будет отправлена.Пожалуйста, помогите.

 def index(request):

     vendor_data = requests.get('https://cve.circl.lu/api/browse').content
     vendors = json.loads(vendor_data)
     vendor_list = []
     context = {}

     for i in range(len(vendors['vendor'])):
         vendor_list.append(vendors['vendor'][i])
    
     paginator = Paginator(vendor_list, 50)
     page_number = request.GET.get('page')

    
     context['page_obj'] = paginator.get_page(page_number)
     return render(request,'index.html',context)

index.html

 <form action="{% url 'appVuldb:output' %}" method="POST" id="venform">
                    {% csrf_token %}
                    
                    {%for vendor in page_obj%}
                        <ul>
                            <li>
                                
                                <a href="javascript:void(0);" class="link" name="vendor_name" 
                                
                                onclick="document.forms['venform'].submit();">{{vendor}}
                                </a>
                            </li>
                        </ul>        

                    {%endfor%}
                </form>`
  

Комментарии:

1. Чего вы в конечном итоге пытаетесь достичь с помощью этого?

2. Когда я нажимаю на тег <a>, мне нужно передать текст внутри функции в представлениях, чтобы я получил всю информацию об этом поставщике

3. Я думаю, что для этого нужны старые добрые гиперссылки. Тогда вам не нужна форма или Javascript, и вы избегаете прерывания кнопки «Назад».

Ответ №1:

Используйте скрытый ввод:

 <input type="hidden" value="{{ vendor }}" name="vendor_name"/>
  

Комментарии:

1. Это работает только в том случае, если OP также создает разные формы для каждого поставщика.