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

فرم ورود

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

×

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


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

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

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


×
×
هزینه های توسعه و نگهداری لام تا کام ماهانه مبلغ 2 میلیون تومان می باشد. لطفا در صورت امکان، با حمایت نقدی خود در زنده ماندن لام تا کام سهیم باشید.
×

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

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

ایجاد داینامیک و ذخیره آن


1
0
33

من یه فرمی دارم شبیه زیر مثل رزومه ساز

رزومه

میخوام بدونم که نحوه ذخیره کردن آن به چه شکلی است یعنی اضفه بشه یا اپدیت؟ من از هر چیز بگی استفاده کردم اما موفق نشدم ممثل firstOrNew
و firstOrCreate و update و..........

روش اول کد

foreach ($request->field as $key => $value) {
    $educational = Educational::firstOrNew(['user_id' => auth()->id()]);
    $educational->user_id = auth()->id();
    $educational->grade_id = $request->grade_id[$key];
    $educational->field = $request->field[$key];
    $educational->institution_id = $request->institution_id[$key];
    $educational->branch = $request->branch[$key];
    $educational->institution_education = $request->institution_education[$key];
    $educational->gpa = $request->gpa[$key];
    $educational->nation_id = $request->nation_id[$key];
    $educational->province_id = $request->province_id[$key];
    $educational->town_id = $request->town_id[$key];
    $educational->province_name = $request->province_name[$key];
    $educational->town_name = $request->town_name[$key];
    $educational->entrance = $request->entrance[$key];
    $educational->graduate = $request->graduate[$key];
    $educational->currently_studying = $request->has("currently_studying.$key");
    $educational->save();
}

روش دوم

foreach ($request->field as $key => $value) {
    try {
        $educational = new Educational;
        $educational->user_id = auth()->id();
        $educational->grade_id = $request->grade_id[$key];
        $educational->field = $request->field[$key];
        $educational->institution_id = $request->institution_id[$key];
        $educational->branch = $request->branch[$key];
        $educational->institution_education = $request->institution_education[$key];
        $educational->gpa = $request->gpa[$key];
        $educational->nation_id = $request->nation_id[$key];
        $educational->province_id = $request->province_id[$key];
        $educational->town_id = $request->town_id[$key];
        $educational->province_name = $request->province_name[$key];
        $educational->town_name = $request->town_name[$key];
        $educational->entrance = $request->entrance[$key];
        $educational->graduate = $request->graduate[$key];
        $educational->currently_studying = $request->has("currently_studying.$key");
        $educational->save();
    } catch (Exception $e) {
        dd($e->getMessage());
    }
}

روش سوم

foreach ($request->field as $key => $value) {
    Educational::firstOrCreate([
        'user_id' => auth()->id(),
        'grade_id' => $request->grade_id[$key],
        'field' => $request->field[$key],
        'institution_id' => $request->institution_id[$key],
        'branch' => $request->branch[$key],
        'institution_education' => $request->institution_education[$key],
        'gpa' => $request->gpa[$key],
        'nation_id' => $request->nation_id[$key],
        'province_id' => $request->province_id[$key],
        'town_id' => $request->town_id[$key],
        'province_name' => $request->province_name[$key],
        'town_name' => $request->town_name[$key],
        'entrance' => $request->entrance[$key],
        'graduate' => $request->graduate[$key],
        'currently_studying' => $request->has("currently_studying.$key"),
    ]);
}

روش چهارم

foreach ($request->field as $key => $value) {
    try {
    $educational = Educational::firstOrCreate(['user_id' => auth()->id()]);
        $educational->user_id = auth()->id();
        $educational->grade_id = $request->grade_id[$key];
        $educational->field = $request->field[$key];
        $educational->institution_id = $request->institution_id[$key];
        $educational->branch = $request->branch[$key];
        $educational->institution_education = $request->institution_education[$key];
        $educational->gpa = $request->gpa[$key];
        $educational->nation_id = $request->nation_id[$key];
        $educational->province_id = $request->province_id[$key];
        $educational->town_id = $request->town_id[$key];
        $educational->province_name = $request->province_name[$key];
        $educational->town_name = $request->town_name[$key];
        $educational->entrance = $request->entrance[$key];
        $educational->graduate = $request->graduate[$key];
        $educational->currently_studying = $request->has("currently_studying.$key");
        $educational->save();
    } catch (Exception $e) {
        dd($e->getMessage());
    }
}

روش پنجم

public function update(Request $request) {
    $user = auth()->user();
    $user->image = $path;
    $user->first_name = $request->first_name;
    $user->last_name = $request->last_name;
    $user->job_title = $request->job_title;
    $user->gender = $request->gender;
    $user->marital = $request->marital;
    $user->soldier_id = $request->soldier_id;
    $user->birth_date_day = $request->birth_date_day;
    $user->month_id = $request->month_id;
    $user->birth_date_year = $request->birth_date_year;
    $user->email = $request->email;
    $user->mobile = $request->mobile;
    $user->telephone = $request->telephone;
    $user->website = $request->website;
    $user->save();
    foreach ($request->field as $key => $value) {
        if ($user->where('user_id', auth()->id())) {
            $educational = $user->findOrFail('user_id');
        } else {
            $educational = new Educational;
        }
        $educational->user_id = auth()->id();
        $educational->grade_id = $request->grade_id[$key];
        $educational->field = $request->field[$key];
        $educational->institution_id = $request->institution_id[$key];
        $educational->branch = $request->branch[$key];
        $educational->institution_education = $request->institution_education[$key];
        $educational->gpa = $request->gpa[$key];
        $educational->land_id = $request->land_id[$key];
        $educational->province_id = $request->province_id[$key];
        $educational->town_id = $request->town_id[$key];
        $educational->province_name = $request->province_name[$key];
        $educational->town_name = $request->town_name[$key];
        $educational->entrance = $request->entrance[$key];
        $educational->graduate = $request->graduate[$key];
        $educational->currently_studying = $request->has("currently_studying.$key");
        $educational->save();
    }
}

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

هیچ ارروری دریافت نمیکنم.

نام رشته تحصیلی هم در فرم و هم در جدولش اسمش field هست.

همه فیلدهاش هم در جدول nullable() قرار دادم چون به خاطر اینکه شاید کاربر نیازی به پر کردن آن نباشه که بعدا خطایی صورت بگیره.

من میخوام همه این فیلدهارا در جدول educationals ذخیره کنم.

چرا برای حلقه foreach از $request->field استفاده کردید؟

به خاطر اینکه $request->field که در بالا اشاره کرده (رشته تحصیلی) اگر رشته تحصیلی خالی باشد اینا را دخیره نکن ولی اگر کاربر پر کرده باشد ذخیره اش کن، حالا شایذ شما روش دیگری میدونی یا روش بهتری داری.

$request->grade_id[$key]

$key هم دیگه بهتر از من میدونی چیه این به خاطر ذخیره شدن به صورت آرایه ای میبباشد.

@mhyeganeh

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

dd($request->field);

بعد این را نمابش داد.

موقعی که ئستور زیر را نوشتم.

public function update(Request $request)
{
    dd($request->all());

پیام زیر را میبینم

توضیح تصویر

dd

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


به لحاظ منطقی updateOrCreate همون چیزی هست که شما توی سوالتون به عنوان نیازتون بهش اشاره کردید. فقط ساختار کلی کدتون یک مقدار نامفهومه. مثلا توی لوپ ها، هیچ جایی از $value استفاده نشده و به شکل مثلا $request->institution_i d[$key] استفاده کردید. ایده ای ندارم که خروجیش همون چیزی میشه که شما میخواید یا نه. بهتره که خروجی dd($request) رو هم ضمیمه سوالتون کنید. ــ سعید مرادی در 12 روز قبل

@سعید.مرادی من پست خود را اپدیت کردم ــ Mahmoud Khosravi در 12 روز قبل

کسی بلد نبود جواب بده ــ Mahmoud Khosravi در 8 روز قبل

خب طبق چیزی که من متوجه شدم، شما یک فرم نسبتا طولانی دارید که قصد دارید کاربر وقتی وارد صفحه میشه اون رو ببینه و تکمیلش بکنه. یک جدول هم دارید توی دیتابیس با اسم educationals که میخواید تمام این فیلدها رو اونجا نگهداری کنید. اوکی خیلی هم خوب .. حالا قصه اینجاست که کلا مفهوم «آپدیت» کجای این فراینده؟ به عبارت بهتر، شما یک فرم داری که میخوای سابمیت کنی و تمام دیتاش رو بریزی توی دیتابیس که از نظر من صرفا یک insert هست. چرا فکر میکنی update باید باشه؟ ــ سعید مرادی در 5 روز قبل

توی هر کدوم از روشها به عنوان مثال user_id داره. اگر کاربری که با اون user_id در جدول educationals وجود داشت، بیا کار بروز رساننی را انجام بده . در غیر این صورت new یعنی اضافه کن یا همین insert شو انجام بده. ــ Mahmoud Khosravi در 21 ساعت قبل

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


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

×

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


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

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


اقتصاد رفتاری بررسی روشهای تاثیرگذار بر رفتار کاربران
مردم همیشه به دنبال چیزهایی هستند که نمیتونن اونارو داشته باشن، و با به سادگی نمیتونن اون رو به دست بیارن.

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


محک