laravel - SQLSTATE [42S22]:未找到列:1054“字段列表”中的未知列
问题描述
我尝试使用 foreach 循环将多个数据存储在“jawapan”表中。该循环基于来自“soalan”表的“soalan_id”。这是我的错误:SQLSTATE[42S22]: Column not found: 1054 Unknown column 'status_pengesahan' in 'field list' (SQL: insert into soalan
( status_pengesahan
, soalan_id
, sesi_id
, agensi_id
, updated_at
, created_at
) 值 (belum_disahkan, 2, 4, 3, 2019-01 -01 01:47:00, 2019-01-01 01:47:00))
我的错误:
我的模型:
class Jawapan extends Model
{
protected $table = 'jawapan';
protected $primaryKey = 'jawapan_id';
protected $fillable = ['jawapan', 'status_pengesahan', 'soalan_id', 'sesi_id', 'agensi_id'];
public function soalan()
{
return $this->belongsTo('App\Soalan', 'soalan_id', 'soalan_id');
}
public function sesi()
{
return $this->belongsTo('App\Sesi', 'sesi_id', 'sesi_id');
}
public function agensi()
{
return $this->belongsTo('App\Agensi', 'agensi_id', 'agensi_id');
}
}
我的观点:
<div class="modal fade" id="tambah_sesi">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Pendaftaran Sesi</h4>
</div>
<div class="modal-body">
{!! Form::open(['method' => 'POST', 'url' => '/tambah_jadul_baru', 'class' => 'form-horizontal']) !!}
<div class="form-group{{ $errors->has('agensi_id') ? ' has-error' : '' }}">
{!! Form::label('agensi_id', 'Agensi/PTJ') !!}
{!! Form::select('agensi_id', $agensi, null, ['id' => 'agensi_id', 'class' => 'form-control', 'required' => 'required', 'single']) !!}
<small class="text-danger">{{ $errors->first('agensi_id') }}</small>
</div>
<div class="form-group{{ $errors->has('sesi_id') ? ' has-error' : '' }}">
{!! Form::label('sesi_id', 'Sesi') !!}
{!! Form::select('sesi_id', $sesi, null, ['id' => 'sesi_id', 'class' => 'form-control', 'required' => 'required', 'sesi']) !!}
<small class="text-danger">{{ $errors->first('sesi_id') }}</small>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Tutup</button>
<button type="submit" class="btn btn-primary">Simpan</button>
</div>
{!! Form::close() !!}
</div>
我的控制器:
public function store(Request $request)
{
$soalan_id = Soalan::select('soalan_id')->get('soalan_id');
foreach ($soalan_id as $question) {
$Soalan = New Soalan();
$Soalan->status_pengesahan = "belum_disahkan";
$Soalan->soalan_id = $question->soalan_id;
$Soalan->sesi_id = $request->sesi_id;
$Soalan->agensi_id = $request->agensi_id;
$Soalan->save();
}
$agensi_sesi = Agensi::find($request->agensi_id);
$agensi_sesi->sesi()->attach($request->sesi_id);
// dd($agensi_sesi);
// $sesi = Agensi::find(1)->sesi()->get();
// dd($sesi);
return redirect('/list_jadual');
}
解决方案
我尝试使用 foreach 循环将多个数据存储在“jawapan”表中。
但这与您的错误消息中的 SQL 不匹配:
SQL:插入到 soalan (status_pengesahan, soalan_id, sesi_id, agensi_id, updated_at, created_at) 值 (belum_disahkan, 2, 4, 3, 2019-01-01 01:47:00, 2019-01-01 01:47:00) )
在那里,您将数据存储到soalan
表中,而不是jawapan
表中。如果jawapan
有status_pengesahan
列而soalan
没有,则错误消息是完全正确的。该列在 上未知soalan
。
也许尝试
foreach ($soalan_id as $question) {
$Jawapan = New Jawapan();
$Jawapan->status_pengesahan = "belum_disahkan";
$Jawapan->soalan_id = $question->soalan_id;
$Jawapan->sesi_id = $request->sesi_id;
$Jawapan->agensi_id = $request->agensi_id;
$Jawapan->save();
}
推荐阅读
- java - 插件 org.codehaus.mojo:exec-maven-plugin:1.5.0 或其依赖项之一无法解析
- html - CSS“悬停”菜单被其他可悬停文本隐藏
- python-3.x - difflib:将关键字列表与另一个列表进行比较并返回比率
- angular - 带有引导 UI 的 Angular 6 在 IE 中偶尔呈现空白屏幕
- ruby - 如何检测客户端是否关闭 Rails 4.2 上的连接
- angular - ionic 4 中的 HTTP Post 未通过 Web 服务
- c++ - 使用 openCV 编译程序时出现 Collect2 ld 错误
- css - 高度为 100% 的 CSS 网格子元素溢出父元素
- node.js - Ng Serve 返回“对象原型可能只是一个对象或空:未定义类型错误:对象原型可能只是一个对象或空:未定义”
- perl - (Perl)从文件中读取字符串时是否可以插入变量?