راکت
reza ataei
reza ataei
8 سال پیش توسط reza ataei مطرح شد
حل
29 پاسخ

ارور در ارسال مقاله

کسی میتونه علت این ارو رو بگه و باید همه فیلدهای جدول رو nullable کنم؟
General error: 1364 Field 'category_id' doesn't have a default value


ثبت پرسش جدید
reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

juzza666@
یک تیبل باشه که شامل شماره و دسته بندی و توضیحات و عکس و ... باشه


سیدعلی موسوی
سیدعلی موسوی
تخصص :سی شارپ و پی اچ پی
@juza668 سال پیشمطرح شد
1

سلام بیشتر توضیح بدید متوجه منظورتون نشدم.
چرا همه فیلدهای رو null قرار بدید؟!


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

چون وقتی دکمه ارسال را برای ذخیره اطلاعات میزنم ارور SQLSTATE[HY000]: General error: 1364 Field 'category_id' doesn't have a default value میده...اگه category_id رو null کنم فیلد بهدی رو این ارو ر میده


سیدعلی موسوی
سیدعلی موسوی
تخصص :سی شارپ و پی اچ پی
@juza668 سال پیشمطرح شد
1

خب وقتی ذخیره اطلاعات میزنی میره به کنترلت ، عملیات ذخیره رو انجام میدی تو تیبل مورد نظر؟!
کد روت و کنترلرت رو قرار بدید


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Requests\Numberrequest;
use App\Number;
use App\User;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class NumberController extends AdminController
{

public function index()
{
    $numbers = Number::latest()->paginate(15);
    return view('Admin.numbers.all', compact('numbers'));
}

public function create()
{
    return view('Admin.numbers.create');
}

public function store(Numberrequest $request)
{

    $imageUrl = $this->uploadImages($request->file('images'));
    auth()->user()->number()->create(array_merge(['images' => $imageUrl], $request->all()));

    return redirect(route('numbers.index'));
}

public function show(Number $number)
{
    //
}

public function edit(Number $number)
{
  //
}

public function update(Request $request, Number $number)
{
    //
}

public function destroy(Number $number)
{
    $number->delete();
    return redirect(route('numbers.index'));
}

}
کنترلر


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

<?php

//sunsimkart.com/Admin//

use Illuminate\Support\Facades\Route;

Route::namespace('Admin')->prefix('admin')->group(function () {

$this->get('/panel', 'PanelController@index');
$this->resource('numbers','NumberController');

});


سیدعلی موسوی
سیدعلی موسوی
تخصص :سی شارپ و پی اچ پی
@juza668 سال پیشمطرح شد
1

اون number() چه فاکشنی تویی مدلت اجرا میکنه؟!


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

App\Http\Controllers\Admin\NumberController@index


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

با لاراول میکس وphp artisan route:list آدرس دهی میکنم عین آموزش مهندس حسام


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

اینم آدرس ریدایرکت هستش http://localhost:8000/admin/numbers


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
0

GET|HEAD | admin/numbers | numbers.index | App\Http\Controllers\Admin\NumberController@index | web |
| | POST | admin/numbers | numbers.store | App\Http\Controllers\Admin\NumberController@store | web |
| | GET|HEAD | admin/numbers/create | numbers.create | App\Http\Controllers\Admin\NumberController@create | web |
| | GET|HEAD | admin/numbers/{number} | numbers.show | App\Http\Controllers\Admin\NumberController@show | web |
| | PUT|PATCH | admin/numbers/{number} | numbers.update | App\Http\Controllers\Admin\NumberController@update | web |
| | DELETE | admin/numbers/{number} | numbers.destroy | App\Http\Controllers\Admin\NumberController@destroy | web |
| | GET|HEAD | admin/numbers/{number}/edit | numbers.edit | App\Http\Controllers\Admin\NumberController@edit | web |
| | GET|HEAD | admin/panel | | App\Http\Controllers\Admin\PanelController@index | web |
| | GET|HEAD | api/user | | Closure | api,auth:api


سیدعلی موسوی
سیدعلی موسوی
تخصص :سی شارپ و پی اچ پی
@juza668 سال پیشمطرح شد
1

نه دوست عزیز متوجه منظورم نشدی

شما میخوای یک فرم رو تویی تیبل Number تون ذخیره کنید درسته؟!
یا میخوای یک عکس رو تویی تیبل مورد نظرتون ذخیره کنید؟!

کلا سناریتو توضیح بده تا بگم خدمتتون چکار کنید


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
0

اینم جدول

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateNumbersTable extends Migration
{
/**

  • Run the migrations.
  • @return void
    */
    public function up()
    {
    Schema::create('numbers', function (Blueprint $table) {
    $table->increments('id');
    $table->integer('user_id')->unsigned();
    $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
    $table->integer('category_id')->unsigned();
    $table->string('title', 12);
    $table->text('body');
    $table->string('price',10);
    $table->string('slug');
    $table->string('condition');
    $table->string('type',15);
    $table->string('city');
    $table->string('goodness');
    $table->integer('viewCount')->default(0);
    $table->string('images');
    $table->timestamps();
    });
    }

    /**

  • Reverse the migrations.
  • @return void
    */
    public function down()
    {
    Schema::dropIfExists('numbers');
    }
    }

reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

توی تیبل نامبر همه فیلدها هست و اون نامبر شامل عکس هم میشه که توی همون تیبل ذخیره میشه


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

juzza666@
یک تیبل باشه که شامل شماره و دسته بندی و توضیحات و عکس و ... باشه


سیدعلی موسوی
سیدعلی موسوی
تخصص :سی شارپ و پی اچ پی
@juza668 سال پیشمطرح شد
1

تویی مدل fillabel هات رو قرار دادی؟


reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

بله قرار دادم


سیدعلی موسوی
سیدعلی موسوی
تخصص :سی شارپ و پی اچ پی
@juza668 سال پیشمطرح شد
1

خب یکاری کن متد store تغییر بده و چک کن و اعلام کن

public function store(Numberrequest $request)
{
    $number = new Number;
    $number->save($request->all());
    return redirect(route('numbers.index'));
}

reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
1

الان به user_id گیر داد
SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a default value (SQL: insert into numbers (slug, updated_at, created_at) values (, 2018-05-25 17:47:45, 2018-05-25 17:47:45))


سیدعلی موسوی
سیدعلی موسوی
تخصص :سی شارپ و پی اچ پی
@juza668 سال پیشمطرح شد
1

خب user_id رو میخوای برابر کاربر قرار بده.

public function store(Numberrequest $request)
{
    $number = new Number;
    $number->save(auth()->user()->user_id, $request->all());
    return redirect(route('numbers.index'));
}

reza ataei
reza ataei
تخصص :در حال یادگیری.....
@rezaataei548 سال پیشمطرح شد
0

Type error: Argument 1 passed to Illuminate\Database\Eloquent\Model::save() must be of the type array, null given, called in C:\xampp\htdocs\mehdisim\app\Http\Controllers\Admin\NumberController.php on line 29


صفحه 1 از 2

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام