You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django中views.py用request.POST取Radio Button值总返回on如何解决

问题解决方法

问题根源是你的单选按钮<input type="radio">没有设置value属性,浏览器在提交表单时,对于没有指定value的选中单选按钮,默认会返回"on"作为值,并不会自动读取对应label标签里的文本内容。

修改方案

你只需要给两个单选按钮分别添加对应value属性即可,修改后的HTML代码片段如下:

<div class="radio-btn-div btn-group" role="group" aria-label="Basic radio toggle button group">
    <input type="radio" id="btnradio1" class="btn-check" name="btnradio" autocomplete="off" checked value="Foodie"> 
        <label class="btn btn-outline-success" for="btnradio1">Foodie</label>
    <input type="radio" id="btnradio2" class="btn-check" name="btnradio" autocomplete="off" value="Restaurant"> 
        <label class="btn btn-outline-success" for="btnradio2">Restaurant</label>
</div>

额外注意

你现有的views.py代码逻辑不需要修改,request.POST['btnradio']就能直接获取到选中项对应的value值。另外不要直接把明文密码存入数据库,Django自带密码加密能力,建议修改创建用户的代码:

# 替换原来的User.objects.create逻辑
user = User.objects.create(username=username, email=email, userType=userType)
user.set_password(password)
user.save()

内容的提问来源于stack exchange,提问作者Rishabh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 09:15:04