php - 从控制器传递布尔值以存储表单数据的正确方法
问题描述
我是 laravel 的新手,不知道我做错了什么。每当我尝试提交表单时,我都会遇到此“Symfony\Component\Debug\Exception\FatalThrowableError 语法错误,意外'='”。
这是在我的 create.blade.php
<div class="form-check">
<input class="form-check-input" type="checkbox" value="1" id="#is_available?" name="is_available?">
<label class="form-check-label" for="is_available?">
Is this available and ready to be rented?
</label>
</div>
在我的 CarsControllers.php
public function store(Request $request)
{
$car = new car;
$car->car_brand = $request->car_brand;
$car->car_name = $request->car_name;
$car->description = $request->description;
$car->car_type_id = $request->car_type_id;
$car->image_location = '';
$car->is_available? = $request->is_available?;
$car->save();
return redirect('/selections');
}
其余的都可以,除了那个布尔值。我不知道该怎么办。我的列名是“is_available?” 我必须改变它吗?
解决方案
您必须将您的表单变量重命名为,name="is_available"
因为?
引号之外只会被解释为速记三元(您可以查看此博客文章以获取更多Stitcher - PHP 中的速记比较)
此外,在您的控制器中,您需要删除?
此语句中的所有内容$car->is_available? = $request->is_available?;
最后,如果您的数据库字段也是is_available?
,您也需要删除它?
。
推荐阅读
- samba - 在 ubuntu 服务器上设置 samba4 时出现 DNS 错误
- python-3.x - 在 python 列表中设置特定的 bin 长度
- graphql - 如何仅将`autoSchemaFile`用于nestjs中的一个解析器
- c - 这是什么 ssize_t getline(char **lineptr, size_t *n, FILE *stream); 功能?
- html - 修剪从表单到 HTML 表的输出,以不显示表单信息或额外的字符串信息
- mysql - Xampp windows 错误 MySQL 意外关闭
- algorithm - 盒子排序算法证明
- reactjs - 在 React 中单击按钮后添加引导卡
- php - IDE 推荐的 isset 的正确用法?
- python - 从列表中删除重复的日期时间日期