【发布时间】:2021-06-07 23:42:05
【问题描述】:
我只是想知道是否可以在不向 MySQL 中填写某些属性的情况下上传表单?我想上传他们可以填写的用户表单以发送他们的申请,但是在管理员方面,他们发送的表单将有另一列是备注,管理员可以拒绝申请然后填写他们被拒绝的备注存储在数据库中。管理员可以编辑它。我试图将值设置为null,但是,当我想对被拒绝的候选人发表评论时,它没有保存在数据库中,它仍然显示为null
存储数据功能
public function update(Request $request, $id)
{
$request->validate([
'fullname' => 'required',
'email' => 'required',
'contact' => 'required',
'address' => 'required',
'attachment' => 'required',
'remarks' => ['nullable', 'string', 'min:5', 'max:500'],
]);
$candidate = new MainForm();
$candidate->fullname = $request->fullname;
$candidate->email = $request->email;
$candidate->contact = $request->contact;
$candidate->address = $request->address ;
$candidate->attachment = $request->attachment;
$candidate->remarks = $request->remarks ;
if
($file = $request->hasFile('attachment')) {
$file = $request->file('attachment');
$filename = time() . '.' .$file->getClientOriginalName();
$destinationPath = public_path('/uploads/documents/');
$file->move($destinationPath, $filename);
$candidate->attachment = $filename;
}
$candidate->save();
return back();
}
下面是我的数据库代码
$table->id();
$table->string('fullname');
$table->string('email');
$table->longText('contact');
$table->string('address');
$table->string('attachment');
$table->string('remarks')->default(NULL);
$table->boolean('status')->default(0);
下面是我的刀片文件,我可以显示候选人的详细信息,一旦我打开备注按钮,它会给我一个模态,我可以在其中放我的备注。
<div class="flex justify-center items-center">
<a href="javascript:;" data-toggle="modal" data-target="#remarks-modal-preview" class="flex items-center mr-3"><i class="w-4 h-4 mr-1"></i> Remarks</a>
<div class="modal" id="remarks-modal-preview">
<div class="modal__content">
<div class="intro-y flex items-center p-5">
<h2 class="text-lg font-medium mr-auto">
Remarks
</h2>
</div>
<form method="post" action="{{ route('mainform') }}">
@csrf
<div class="intro-y box p-5">
<div class="mt-3">
<label>Name</label>
<div class="mt-2">
<input type="text" placeholder="name" name="fullname"
class="input w-full border col-span-4 form-control" value="{{ $candidate->fullname}}" readonly >
</div>
</div>
<div class="mt-3">
<label>Email</label>
<div class="mt-2">
<input type="text" placeholder="email" name="email"
class="input w-full border col-span-4 form-control" value="{{ $candidate->email}}" readonly >
</div>
</div>
<div class="mt-3">
<label>Phone Number</label>
<div class="mt-2">
<input type="text" placeholder="contact" name="contact"
class="input w-full border col-span-4 form-control" value="{{ $candidate->contact}}" readonly >
</div>
</div>
<div class="mt-3">
<label>Address</label>
<div class="mt-2">
<input type="text" placeholder="address" name="address"
class="input w-full border col-span-4 form-control" value="{{ $candidate->address}}" readonly >
</div>
</div>
<div class="mt-3">
<label>Remarks</label>
<input type="text" placeholder="remarks" name="remarks"
class="input w-full border col-span-4 form-control tail-select" value="{{ $candidate->remarks}}">
</div>
<div class="text-right mt-5">
<button type="button" data-dismiss="modal"
class="button w-24 border dark:border-dark-5 text-gray-700 dark:text-gray-300 mr-1">Cancel</button>
<button type="submit" class="button w-24 bg-theme-1 text-white">Save</button>
</div>
</div>
</form>
</div>
</div>
【问题讨论】:
-
您发布的 PHP 代码在任何地方都没有引用
Remarks字段。 -
我更新了我的问题
-
你也更新
MainForm::save()了吗? -
是的,我已经更新了
-
你是说模型存储成功,但是更新是个问题。那么,您为什么要向我们展示存储新模型的代码呢?更新现有模型的代码在哪里?