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

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

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


ثبت پرسش جدید
reza ataei
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش آپدیت شد
1

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


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

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


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

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


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 7 سال پیش آپدیت شد
1

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


reza ataei
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش مطرح شد
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
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش مطرح شد
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');

});


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

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


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

App\Http\Controllers\Admin\NumberController@index


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

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


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

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


reza ataei
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش مطرح شد
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


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

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

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

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


reza ataei
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش مطرح شد
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
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش مطرح شد
1

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


reza ataei
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش آپدیت شد
1

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


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

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


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

بله قرار دادم


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

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

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

reza ataei
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش مطرح شد
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))


سیدعلی موسوی
تخصص : سی شارپ و پی اچ پی
@juza66 7 سال پیش آپدیت شد
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
تخصص : در حال یادگیری.....
@rezaataei54 7 سال پیش مطرح شد
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


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

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