我是 PHP 新手。 我有在 Laravel 上创建的管理面板(后台)。 面板上显示来自 MySQL 表(演示)的出价列表(演示)。
我已经删除了下面代码中的所有 html。
以下代码在演示 View 中显示表中的每一行:
@foreach($listDemos as $demo)
{{ $demo->id }}
{{ $demo->name }}
{{ $demo->email }}
{{ $demo->link }}
{{ $demo->created_at }}
@endforeach
这是演示 Controller
public function demo()
{
$listDemos = Demo::all();
return view('backstage.demos')->with('listDemos', $listDemos);
}
这里是演示路线:
Route::get('backstage/demos', 'BackstageController@demo');
我有另一个 mysql 表 (demoStatus),有 2 列
id and status
问题是如何通过单击演示 View 中的按钮将状态(拒绝)存储在不同的表中(demoStatus,其中 id = 演示表中的演示 id,状态 = 按钮值):
@foreach($listDemos as $demo)
{{ $demo->id }}
{{ $demo->name }}
{{ $demo->email }}
{{ $demo->link }}
{{ $demo->created_at }}
<form action="" method="post">
{{ csrf_field() }}
<button type="submit">Decline</button>
</form>
@endforeach
CSRF字段存储在每个页面的头部
<meta name="csrf-token" content="{{ csrf_token() }}">
对于 demoStatus,我有另一个模型:
class DemoStatus extends Model
{
protected $table = 'demosStatus';
protected $fillable = 'status';
}
和演示模型:
class Demo extends Model
{
protected $table = 'demos';
}
最佳答案
实际上,您必须在提交时发送该演示 ID
。一种方法是使用隐藏字段。
<form action="some/action/here" method="post">
{{ csrf_field() }}
<input type="hidden" name="demo_id" value="{{ $demo->id }}" />
<button type="submit">Decline</button>
</form>
这篇文章的提交路径。获取此演示 ID 并做任何您想做的事情
关于php - 保存数据库行的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44559440/