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

Django表单提交后仅price字段返回None其余字段正常显示如何解决

排查及解决步骤

1. 优先核查price_cal函数的分支覆盖情况

当前price_cal仅针对flight_number的两种固定取值做了返回处理,只要前端传递的flight_number和这两个值存在字符差异(包括大小写、前后空格、文字不符),函数就没有默认返回值,默认返回None,这是概率最高的诱因。
可先添加日志和兜底返回验证:

def price_cal():
    # 打印实际接收的参数,确认值是否符合预期
    print(f"flight_number实际值:|{flight_number}|,suburb实际值:|{suburb}|,乘客数实际值:|{no_of_passenger}|")
    if flight_number == 'Drop off To airport':
        return int(suburbs.get(suburb, 0)) + (int(no_of_passenger) * 10) - 10
    elif flight_number == 'Pickup from airport':
        return int(suburbs.get(suburb, 0)) + (int(no_of_passenger) * 10)
    # 添加兜底返回,避免无匹配时返回None
    return 0

提交请求后查看服务端控制台的打印内容,即可确认flight_number的实际值是否和判断条件完全匹配。


2. 快速定位问题范围

可以先屏蔽计算逻辑,直接给price赋固定值测试:

# price = price_cal()
price = 100

如果页面可以正常显示100,说明问题完全出在price_cal的计算逻辑内,无需排查模板传参、变量渲染的问题。


3. 其他低频问题排查

  • 确认suburbs字典中存在对应suburb的键,避免suburbs.get(suburb)返回None引发异常(你提到没有报错,该场景概率较低)
  • 确认前端模板中价格渲染的变量为{{ price }},无拼写、大小写错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 05:36:03