欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

Form Model Binding and Radio Buttons 表单模型绑定和无线电按钮

我正在构建一个表单来编辑一个表单模型绑定的行,问题是所有的单选按钮都被取消选中,似乎没有读取数据库的值。我尝试使用if语句但抛出语法错误:
{{ Form::radio('tributary', 'true', @if ($station->tributary == true) true @else false @endif) }} Yes

结果是:

<?php echo Form::radio('tributary', 'true', <?php if($station->tributary == true): ?> true <?php else: ?> false <?php endif; ?>); ?> Yes

我该怎么解决?

尝试这个:

{{ Form::radio('tributary', 'true', $station->tributary }} Yes

franzliedke说:

尝试这个:

{{Form :: radio('tributary','true',$ station-> tributary}}是的

没有工作 无论如何,当支流是假的时候,两个单选按钮(一个是真值,另一个是假值)都被取消选中,但当支流为真时,检查是否单选按钮。

好的,我解决了这个问题,错误是收音机的价值必须是1或0(true和false不适用于我),而不是'true'或'false'(用''是字符串而不是布尔值)。现在Form Modal Binding正确检测单选按钮。

{{ Form::radio('tributary', 1) }} Yes
{{ Form::radio('tributary', 0) }} No

根据数据库中保存的内容,当找到一个解决方案来标记许多单选按钮中的一个为true时,我找到了这个页面。之后我想出了一个解决方案,并且认为如果有人找到这个页面,我会添加我的解决方案。你不能使用if语句为不同的选项设置值,而且这个方法比我相信更快。

{{ Form::radio('name', 'value1', ($var->option == 'value1') }} Value1
{{ Form::radio('name', 'value2', ($var->option == 'value2') }} Value2
{{ Form::radio('name', 'value'3, ($var->option == 'value3') }} Value3

这导致只给出存储值a 1,这使得该选项/值有效。

标题称“表单模型绑定和单选按钮”,但我看不到任何表单模型绑定在这里!我期待找到一些使用表单模型绑定来填充几个单选按钮的方法...

我同意。没有表单模型绑定在该解决方案。

我通过使用['checked'=>'checked']数组作为Laravel 5.3中的第四个参数来修复它

{{Form :: label('visible','Visibility')}}

            @if ($category->visible == '1')
                {{ Form::radio('visible', '1', true, ['checked' => 'checked']) }} Yes
                <br />
                {{ Form::radio('visible', '0', false, []) }} No
            @else
                {{ Form::radio('visible', '1', false, []) }} Yes
                <br />
                {{ Form::radio('visible', '0', true, ['checked' => 'checked']) }} No
            @endif

http://deepdivetuts.com/adding-a-radio-button-in-laravel-5-3-blade-template

来自  https://laravel.io/forum/08-21-2014-form-model-binding-and-radio-buttons
普通分类: