جستجو در بخش : سوال جواب منابع اسلامی لغت نامه ها قوانین و مصوبات
×

فرم ورود

ورود با گوگل ورود با گوگل ورود با تلگرام ورود با تلگرام
رمز عبور را فراموش کرده ام عضو نیستم، می خواهم عضو شوم
×

×

آدرس بخش انتخاب شده


جهت کپی کردن میتوانید از دکمه های Ctrl + C استفاده کنید
رویداد ها - امتیازات
در حال بارگذاری
×

رویداد ها - امتیازات

برای بررسی عملکرد فعالیت و امتیازات خود باید در وب سایت وارد باشید. در صورت عضویت از بخش بالای صفحه وارد شوید، در غیر این صورت از دکمه پایین، مستقیم به صفحه ثبت نام وارد شوید.


×
×
برنامه نویسان ما مشغول به کدنویسی و توسعه لام تا کام هستند، ما مشتاقانه منتظر نظرات و پیشنهادات شما جهت بهبود و ارتقاء کیفی وب سایت هستیم.
×

دلیل درخواست بستن پست

حاوی مفاهیم غیر اخلاقی، سیاسی و یا توهین آمیز. کلیه پست هایی که از نظر محتوایی نیاز به بررسی و یا حذف شدن دارند در این دسته قرار می گیرند.
محتوایی با عدم جزئیات کافی و مورد نیاز. کلیه پست هایی که منظور نویسنده به وضوح مشخص نیست و نیازمند توضیحات و جزئیات بیشتر می باشند در این دسته قرار می گیرند.
محتوایی بی ربط با موضوعیت سرفصل کلی. کلیه پست هایی که از منظر مفهوم و مضمون ارتباطی با عنوان اصلی سوال ندارند در این دسته قرار می گیرند.
محتوایی دلخواه و بر پایه سلیقه. کلیه پست هایی که یک پاسخ مشخص ندارند و متوانند چندین پاسخ متفاوت و صحیح داشته باشند که کاملا مبتنی بر نظر شخصی افراد هستند در این دسته قرار می گیرند.
محتوایی در حوزه خیلی وسیع. کلیه پست هایی که از نظر محتوایی در یک حوزه ی وسیعی قرار دارند و مشخصا به یک موضوع خاصی اشاره ندارند که پاسخدهی به آن ها مستلزم تشریح مفاهیمی کلی می باشند در این دسته قرار می گیرند.
قبلا در لام تا کام مطرح شده. پست هایی که دقیقا با همین محتوا و مضمون قبلا در وب سایت لام تا کام درج شده اند، با ذکر آدرس منبع تکراری با پست حال حاضر شامل این دسته هستند. تکراری است با:
به سایر دلایل، نیازمند به بررسی توسط مدیر. به هر دلیل غیری که پست را نیازمند بررسی توسط مدیر کرده، با ذکر دلیل، در این دسته قرار میگیرد.
ارسال رای بستن

چگونه parent_id را در جدول کاربران users پیدا کنیم؟


0
0
25

من دو تا جدول users و buys دارم.

users table:

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->string('first_name');
        $table->string('last_name');
        $table->string('referral_code')->nullable();
        $table->integer('parent_id')->unsigned()->nullable();
        $table->string('mobile')->unique();
        $table->string('email')->unique();
        $table->string('password');
        $table->rememberToken();
        $table->timestamps();
    });
}

buys table

public function up()
{
    Schema::create('buys', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->bigInteger('user_id')->unsigned();
        $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
        $table->bigInteger('product_id')->unsigned();
        $table->foreign('product_id')->references('id')->on('products')->onDelete('cascade');
        $table->timestamps();
    });
}

من میخوام از جدول buys فیلد user_id را فراخوامی کنم و به جدول کاربران با فیلد parent_id فراخوانی کنم.

$users = Buy::all()->where('parent_id', auth()->user()->id)->latest()->paginate(25);

مدل Buy

public function user ()
{
    return $this->hasOne(User::class);
}

این خطا به میده

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'parent_id' in 'where clause' (SQL: select count(*) as aggregate from buys where parent_id = 2)

سایر لاراول
ویرایش شده در 12 روز قبل Mahmoud Khosravi
9954 امتیاز
سوال شده در Mahmoud Khosravi
78 امتیاز

500 کاراکتر باقی مانده

1 جواب

1

ببینید در لاراول، به صورت پیش فرض، باید کلید های خارجی را با یک استاندارد مشخص تعریف کنید ؛ در اون صورت کدتون به درستی کار میکنه. یعنی در سوال شما، کلید خارجی به صورت استاندارد باید اینطوری نامگذاری بشه: method name + _id یعنی: user_id.

ولی چون شما نامگذاری استاندارد رو رعایت نکردید، باید نام ستون های جدولتون رو در رابطه ی لاراولی که میزنید ذکر کنید، به این صورت:

public function user ()
{
    return $this->hasOne(User::class, 'parent_id', 'user_id');
}

ولی اگر بخوام کوئری شما رو تصحیح بکنم، باید بگم که شما دارید روی ستونی کوئری میزنید که وجود نداره توی اون جدول، باید به این شکل بنویسیدش:

$users = Buy::with('user')->where('user_id', auth()->user()->id)->latest()->paginate(25);
جواب داده شده در سعید مرادی
1232 امتیاز

500 کاراکتر باقی مانده


جواب شما
     
.....
×

×

جعبه لام تا کام


لام تا کام نسخه صفحه کلید نیز راه اندازی شده است. شما با استفاده از کلیدهای موجود بر روی صفحه کلید دستگاهتان می توانید با وب سایت ارتباط برقرار کنید.
لیست کلید های میانبر

تبلیغات توضیحی


هفت میوه خرید آنلاین میوه، سبزی، گوشت، نان
فروشگاه آنلاین میوه، سبزی، صیفی، فرنگی، شربت، مربا، ترشی و محصولات خانگی سالم. ارسال در زمان انتخابی.

تبلیغات تصویری


محک