单选按钮不在本地主机上“检查”(Laravel / Vagrant)

时间:2018-04-28 21:14:57

标签: php laravel vagrant

有一段时间我有一个奇怪的问题: 标准语法

{{Form :: radio ('somename', 'someval', true, ['adparam' => 'someparam'])}}

参数'checked'不会在本地主机上呈现(mac,vagrant / box,laravel 5.4),但它可以在远程服务器上运行...

我已经打破了大脑,在哪个方向上挖掘,因为我甚至没有注意到它开始工作不正确的时刻(事实上,它已经工作了一段时间)?

UPD: 整个页面真的很大,但是这段代码是

{{ Form::radio('certain', '1', true, ['data-case'=>$case->slug]) }} Возможный
{{ Form::radio('certain', '2', false, ['data-case'=>$case->slug]) }} Вероятный
{{ Form::radio('certain', '3', false, ['data-case'=>$case->slug]) }} Характерен для
{{ Form::radio('certain', '4', false, ['data-case'=>$case->slug]) }} Достоверный/Верифицированный

实际上,只有控制器中的数据与视图匹配时才会出现此问题。如果我有$case->certain和广播certain它不起作用,但是当我更改certain2之类的广播名称时,它有效,但当然没有任何意义。正如我所提到的那样,这个问题只存在于localhost上而且只会扰乱开发。

UPD: 在与调试工具斗争后,我发现服务器以不同的方式处理param。 对于localhost工作:

{!! Form::radio('sex', 0, true) !!}
{!! Form::radio('sex', 1) !!}
{!! Form::radio('sex', 2) !!}

对于制作作品:

{!! Form::radio('sex', '0', true) !!}
{!! Form::radio('sex', '1') !!}
{!! Form::radio('sex', '2') !!}

问题:在哪里隐藏了一个设置(等等1!='1')?

2 个答案:

答案 0 :(得分:0)

您无法选择多个单选按钮。单选按钮组允许单个选择。您需要使用复选框才能完成多项选择。

答案 1 :(得分:0)

问题归结为使用不同的数据库PDO驱动程序。

有些返回int作为字符串,其他返回int作为字符串。更多here

临时解决方案

    'mysql' => [
        'options'   => [PDO::ATTR_EMULATE_PREPARES => true]
    ],

database.php

中的配置中