type data struct {
invitecode string
fname string
lname string
}
我在解析后通过检索表单数据来填充
...
r.ParseForm()
new user := &data{
invitecode: r.FormValue("invitecode"),
fname: r.FormValue("fname")
lname: r.FormValue("lname")
}
我希望检查从表单中获得的invitecode
字段是否为空,如果是空,则通过调用函数填充它,如果不是,则使用检索到的值填充它(invitecode:if newuser.invitecode==“”{“mr”}else{lnames.title},)。我知道go没有一个tenary运算符,我想要使用这个运算符,阅读这里的问题,这里的问题,这里的问题,这里的问题意味着使用一个if else语句,但我似乎不能让它起作用。更好的,我正在寻找一个解决方案,检查的同时分配一个新的变量。尝试下面的代码似乎不起作用。如有任何帮助,我们将不胜感激。
package main
import (
"fmt"
)
type data struct {
invitecode string
fname string
lname string
}
func main() {
var user data
newUser := map[string]string{"invitecode": "", "fname": "Dude", "lname": "Did"}
user = &data{
invitecode: if newUser.invitecode == "" {"Mr"} else {lnames.title},
fname: newUser.fname,
lname: newUser.lname,
}
fmt.Println(user)
}
Go没有三元组,也不能像代码中显示的那样执行内联if
。您必须执行正常的if
块:
user = &data{}
if newUser.inviteCode = "" {
user.invitecode = "Mr"
} else {
user.invitecode = lnames.title
}
等等。您可以将其提取到一个函数中:
func coalesce(args ...string) string {
for _,str := range args {
if str != "" {
return str
}
}
return ""
}
并按如下方式使用:
user.invitecode = coalesce(lnames.title, "Mr")
问题内容: 我正在努力从以下代码中获取正确的输出: 游乐场片段 打印时,结构字段为空。我敢肯定某个地方有一个愚蠢的错误,但是我仍然对Go还是陌生的,而且我已经在这里呆了几个小时。请帮忙。 问题答案: 这已经出现了很多次了。问题在于只能对导出的字段进行封送处理。 通过以大写(大写)字母开头来导出结构域。 在Go Playground上尝试一下。 请注意,JSON文本包含带有小写字母文本的字段名称,但
我有数据类 我用jooq写了请求 但我有一个例外,若作者并没有书。这是合乎逻辑的,因为数据类Author中的外业手簿不可为空。我试图将伴生对象添加到数据类中 但是它不起作用,jooq仍然尝试使用默认构造函数,我得到了一个异常。有没有办法在不使数据类中的字段书作者为空的情况下修复它?
问题内容: 在MySQL中,是否可以将“总计”字段设置为零(如果它们为NULL)? 这是我所拥有的: 数据输出正常,但NULL字段应为。 如何在MySQL中为NULL返回0? 问题答案: 使用IFNULL: 从文档中: 如果expr1不为NULL,则IFNULL()返回expr1; 否则返回expr2。IFNULL()返回数字或字符串值,具体取决于使用它的上下文。
如果值为空,则需要在单元格中显示一个不间断的空格。这是我的模板: 我试过这个,但不管用: 它返回值的问题是: 如果许可证号带有值,则单元格为空,行颜色如下所示。 利用卢库马的建议,它表明了这一点: 更改筛选器中的if语句后,仍然不显示非值:
问题内容: 我想按(不修改日期时间)将其排序(不修改日期时间),否则按(不发布日期时间)排序 问题答案: 似乎我每周在这里就此给出3条建议,也许我应该放弃并放任它:-)不,我不这么认为: __ 如果希望数据库很好地扩展,请 不要 在列计算(或子句)中使用逐行函数。你应该为你的具体情况检查性能( 测量,不要猜测 ),但是当做计算 读取 数据库通常会影响你的能力,规模(这不会不管你的通讯录数据库,但我
我使用Symfony 5.3。我有一个表单,有3个字段没有映射到任何实体: "原因"-文本, use_predefined复选框 "predefined_reason"-下拉列表。 我构建的表单如下(一个片段): “原因”字段应根据需要显示在UI中,但其他两个字段不应显示。但是,在验证过程中,如果选中了复选框“预定义的原因”,则第一个字段不应为必填字段,而“预定义的原因”应为必填字段。