Laravel刀片“旧输入或默认变量”?

By simon at 2018-02-28 • 0人收藏 • 56人看过

我想在输入值中显示旧的输入。如果没有旧的输入,比 显示其他变量:

value="{{ old('salary_' . $employee->id) or 'Default' }}"
但是,当有no旧的输入,它给我1而不是默认值! 我认为这个问题与串联有关,但我don't 知道如何解决它!?

3 个回复 | 最后更新于 2018-02-28
2018-02-28   #1

~~ or是PHP中的比较运算符,因此您的代码正在进行评估 true或1.你想要的是一个三元if声明。~~ 如前所述,or可以在刀片中用作三元符号的简写 声明。 但你可以(and should)只是将默认值作为第二个参数传递给 该功能如下所示:

value="{{ old('salary_' . $employee->id, 'Default') }}"

2018-02-28   #2

~~ or是PHP中的比较运算符,因此您的代码正在进行评估 true或1.你想要的是一个三元if声明。~~ 如前所述,or可以在刀片中用作三元符号的简写 声明。 但你可以(and should)只是将默认值作为第二个参数传递给 该功能如下所示:

value="{{ old('salary_' . $employee->id, 'Default') }}"

2018-02-28   #3

正如Laravel文档中所述:“如果您正在显示一个旧的输入 刀片模板,使用旧的更方便帮手:“所以如果你需要的话 添加/编辑数据表单(当您需要使用编辑表单进行编辑中的添加和编辑时 模式你需要使用加载来自模型(数据库)的数据)来显示值 您可以使用以下模型(通过控制器):

name="some_value" value="{{ $some_value or old('some_value', $the_value) }}"
“索姆在哪里?evaluefrommodel“视图数组中的变量名。在这种情况下 首先应该使用$ somevalue来设置“价值”e“,如果不是, 它会尝试使用旧的(来自名称“some_value”的请求中的值),如果不是 那么应该使用旧的“。 谢谢WoodyDRN发表评论。

登录后方可回帖

Loading...