私はLaravelにはかなり新しく、ユーザーがFacebookのようなステータスを更新するソーシャルメディアウェブサイトを作成していましたが、それには画像が添付されているはずです。LARAVEL:サーバーにオプションの値 'Image'を挿入しようとしています
だから私はそれが私にこのエラーを与えるイメージせずにポストを送信史上とき:
SQLSTATE [23000]:整合性制約違反:1048列「イメージ」をNULLにすることはできません(SQL:stories
に挿入(body
、あることを示しているimage
、user_id
、updated_at
、created_at
)値(マイanmeのOS Ololade、、2、2017年12月14日午後02時00分08秒、2017年12月14日午後02時00分08秒))
画像の値はありません。しかし、私は移行ファイルを更新し、次のように画像をNULL可能にしました: $ table-> binary( 'image') - > nullable(); それは動作し、画像のアップロードはオプションになりますが、私のSQLデータベースをチェックすると、画像列の下のすべての値がnullであるため、画像をアップロードするたびにblobファイルが表示されません。
私はこのエラーを無効にする方法はありますか?つまり:画像がない場合は、ステータスを更新するか、コントローラーを介して画像データが必要でないという確認を渡すことができます。
ここが私のコードです:
public function up()
{
Schema::create('stories', function (Blueprint $table) {
$table->increments('id');
$table->text('body');
$table->binary('image')->
$table->integer('user_id');
$table->timestamps();
});
}
//Migrations file
public function createStory(Request $request){
$image = $request['image'];
$story = new Story();
$story->body = $request['body'];
$story->image = $image;
$request->user()->stories()->save($story);
return response()->json(['message' => 'Your Story has been posted']);
}
//The Function that creates a post
画像が空であるかどうかを確認するためにクエリを実行する前に、まず条件を追加する必要があります。 –