راکت
حل شده

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

29 پاسخ

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

ثبت پرسش جدید

پاسخ‌ها

29
reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

بهترین پاسخ

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

سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

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

reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

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

شاید پاسخ شما همین‌جا باشد

سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

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

reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

<?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
@rezaataei54

تخصص: در حال یادگیری.....

<?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

تخصص: سی شارپ و پی اچ پی

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

reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

App\Http\Controllers\Admin\NumberController@index

reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

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

reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

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

reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

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

تخصص: سی شارپ و پی اچ پی

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

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

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

reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

اینم جدول

<?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
@rezaataei54

تخصص: در حال یادگیری.....

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

سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

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

reza ataei
reza ataei
@rezaataei54

تخصص: در حال یادگیری.....

بله قرار دادم

سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

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

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

تخصص: در حال یادگیری.....

الان به 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

تخصص: سی شارپ و پی اچ پی

خب 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
@rezaataei54

تخصص: در حال یادگیری.....

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

سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

اره ارایه نمیگیره متد ذخیره

یکاری کن اینجوری مثه store من تغییرش بده

        $contacts = new Contact;
        $contacts->user_id = auth()->user()->id;
        $contacts->subject = request()->subject;
        $contacts->part = request()->part;
        $contacts->status = request()->status;
        $contacts->TextTips = request()->description;
        $contacts->read = '0';
        $contacts->date = $dateshamsi;
        $contacts->fileurl = $selectfile;
        $contacts->codetiket = $code;
        $contacts->lock = '0';
        $contacts->save();
صفحه 1 از 2

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

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