登录
首页 >  Golang >  Go问答

返回默认值当用户未输入

来源:stackoverflow

时间:2024-03-17 21:24:22 196浏览 收藏

在某些情况下,我们需要在用户未输入字段时返回默认值。这可以通过设置默认值变量和在查询中使用它来实现。例如,我们可以使用以下查询来更新自定义参数表,当用户未输入注释时返回默认注释: ```sql UPDATE custom_param SET param_value = $1, start_date = $2, end_date = $3, status = $4, notes = $5 WHERE param_name = 'default-password' RETURNING param_value, start_date, end_date, status, notes; ``` 其中,变量 `notes` 已设置了默认值 "this will be default"。如果用户输入了注释,则使用用户的注释覆盖默认值。通过这种方式,我们可以确保即使用户未输入字段,也可以返回默认值。

问题内容

当用户未输入字段时返回默认值 变量( 注释='这将是默认的' )

qapi := `
UPDATE custom_param SET param_value = $1, start_date = $2, end_date = $3, status = $4 `enter code here` WHERE param_name = 'default-password'
RETURNING param_value, start_date, end_date, status, notes; 
`
// insrt into master_param
sqlError := tx.QueryRowContext(ctx, qapi, request.Value, request.StartDate, request.EndDate, request.Status, request.Notes).Scan(
    &value,
    &startDate,
    &endDate,
    &status,
    ¬es,
)
queryInsertNotes := `insert `
if request.Notes != "" {
    notes = request.Notes
}

if sqlError != nil {
    log.Println("SQL Error on ReadApplication on UpdateScheduleMaintenance", sqlError)
    tx.Rollback()
    return schedule, sqlError
}

err = tx.Commit()
if err != nil {
    tx.Rollback()
    return schedule, err
}

当用户未输入任何注释时返回默认注释


正确答案


我认为你需要这样的东西,尚未测试代码,但你明白了。

notes := "this will be default"
if request.Notes != "" {
    notes = request.Notes
}

qapi := `
UPDATE custom_param SET param_value = $1, start_date = $2, end_date = $3, status = $4, notes = $4 WHERE param_name = 'default-password'
RETURNING param_value, start_date, end_date, status, notes; 
`
// insrt into master_param
sqlError := tx.QueryRowContext(ctx, qapi, request.Value, request.StartDate, request.EndDate, request.Status, notes).Scan(
    &value,
    &startDate,
    &endDate,
    &status,
    ¬es,
)


if sqlError != nil {
    log.Println("SQL Error on ReadApplication on UpdateScheduleMaintenance", sqlError)
    tx.Rollback()
    return schedule, sqlError
}

err = tx.Commit()
if err != nil {
    tx.Rollback()
    return schedule, err
}

今天关于《返回默认值当用户未输入》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>