【发布时间】:2019-09-10 15:48:30
【问题描述】:
我已经在其他主题中寻找过相同的问题,但大多数问题都在模型($fillable)或表单“名称”属性中。我认为问题出在我的 .当我提交时,值不会发送到控制器。
型号
namespace App\Models;
use Illuminate\Database\Eloquent\Model as Eloquent;
class ContactCli extends Eloquent
{
protected $fillable = ['name', 'email', 'phone', 'message', 'subject'];
protected $table = 'contact_clis';
}
控制器
public function contactUSPost(Request $request){
$contact = new ContactCli();
$contact->name = $request->input('name');
$contact->email = $request->input('email');
$contact->phone = $request->input('phone');
$contact->subject = $request->input('subject');
$contact->message = $request->input('message');
//dd($contact);
$contact->save();
return redirect()->babck()->with('success', 'Thanks for contacting us!');
}
路线
Route::group(['prefix' => '/', 'namespace' => 'Cms'], function(){
Route::post('home', 'PagesController@contactUSPost')->name('contactus.store');
});
为了减少代码,我只会输入“名称”。 表格
<form name="sentMessage" class="text-white" id="contactForm" method="POST" action="{{route('contactus.store')}}" novalidate="novalidate" >
{{ csrf_field() }}
<div class="control-group">
<div class="form-group floating-label-form-group controls mb-0 pb-2">
<label>Nome</label>
<input class="form-control bg-secondary text-white" id="name" type="text" placeholder="Nome" required="required" data-validation-required-message="Please enter your name." autocomplete="off">
<p class="help-block text-danger"></p>
</div>
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary btn-xl" id="sendMessageButton">Enviar</button>
</div>
</form>
</form>
当运行 dd()
ContactCli {#598 ▼
#fillable: array:5 [▼
0 => "name"
1 => "email"
2 => "phone"
3 => "message"
4 => "subject"
]
#table: "contact_clis"
#connection: null
#primaryKey: "id"
#keyType: "int"
+incrementing: true
#with: []
#withCount: []
#perPage: 15
+exists: false
+wasRecentlyCreated: false
#attributes: array:5 [▼
"name" => null
"email" => null
"phone" => null
"subject" => null
"message" => null
]
#original: []
#changes: []
#casts: []
#dates: []
#dateFormat: null
#appends: []
#dispatchesEvents: []
#observables: []
#relations: []
#touches: []
+timestamps: true
#hidden: []
#visible: []
#guarded: array:1 [▶]
}
所以,我得到的错误是:
SQLSTATE[23000]:违反完整性约束:1048 列“名称” 不能为空(SQL:插入
contact_clis(name,phone,subject,message,updated_at,created_at) 值 (, , , , , 2019-09-10 12:46:55, 2019-09-10 12:46:55))
从表单发送的值被发送为空。
【问题讨论】: