Как получить переменную request.GET.get('variable') в нескольких значениях
Как получить несколько значений в форме ввода html на django. Я получаю только значение первого ввода Enroll, но когда я нажимаю на вторую кнопку, которая является Payment, я не могу получить значение и в третьем вводе Я не знаю, в JavaScript ли проблема или в моем views.py - Начинающий программист :(
)
html и javascript
<html>
....
<script>
function newAppend(name, img, side){
const msgCHAT = `
<div class="msg ${side}-msg">
<div class="msg-img" style="background-image: url(${img})"></div>
<div class="msg-bubble">
<div class="msg-info">
<div class="msg-info-name">${name}</div>
<div class="msg-info-time">${formatDate(new Date())}</div>
</div>
<div class="msg-text"><p>How can I help you?</p></div>
<br>
<div class="butnew">
<button type="submit" class="input-bot" name="input_text" id="inputBot" value="Enroll">Enrollment</button>
<button type="submit" class="input-bot" name="input_text" id="inputBot" value="Pay">Payment</button>
<button type="submit" class="input-bot" name="input_text" id="inputBot" value="Hi">Hi Username</button>
</div>
</div>
</div>
`;
msgerChat.insertAdjacentHTML("beforeend", msgCHAT);
msgerChat.scrollTop += 500;
// ===================================================================
const msgerInputTwo = get(".input-bot");
document.getElementById("inputBot").addEventListener("click", event => {
event.preventDefault();
const msgTextTwo = msgerInputTwo.value;
appendMessage(PERSON_NAME, PERSON_IMG, "right", msgTextTwo);
botResponse(msgTextTwo);
});
}
function botResponse(rawText) {
// Bot Response
$.get("/chatbot/post", {input_text: rawText }).done(function (data) {
console.log(rawText);
console.log(data);
const msgText = data;
appendMessage(BOT_NAME, BOT_IMG, "left", msgText);
});
}
</script>
</html>
views.py
def chatbot_process(request):
.....
message = request.GET.get('input_text')
message = message.lower()
ints = predict_class(str(message))
response = get_response(ints, intents)
response = str(response)
return HttpResponse(response)
def chatbot(request):
return render(request, "chatbot/chatbot.html")
URLS.py
from django.urls import path
from . import views
urlpatterns = [
path('train/', views.train_data, name='chatbot-train'),
path('chatbot/', views.chatbot, name='chatbot-chatbot'),
path("post/", views.chatbot_process, name='post'),
]
Если у вас есть несколько элементов одной переменной в ваших формах, вы можете получить их в array
Попробуйте этот способ:
request.GET.getlist('variable')
# ['value one', 'value two']