سلام دوستان، خسته نباشید
یه سیستم چند کاربره(multi auth) در نظر بگیرید، میخوام واسه پرداخت هایی که انجام میشه، طوری اطلاعات رو ذخیره کنم که بعدا واسه گزارش گیری موارد زیر رو بتونم دربیارم از داخل اطلاعات:
چه کاربری، به چه کاربری ، چقدر ، و در ازای چه کاری پول پرداخت کرده و همچنین موجودی حساب (که چقدر داشته، و بعد از پرداخت چقد میشه) رو بشه استخراج کرد
همچنین کیف پول هم کاربرا دارن
حالا میخوام جدول و فیلداش و روابطش رو کمک کنید، چون سر در گم شدم چطوری اینو انجام بدم، ممنون میشم
$table->bigIncrements('id');
$table->unsignedBigInteger('gateway_id');// رابطه با جدول تراکنش بانک
$table->morphs('payer'); // پرداخت کننده
$table->morphs('recipient'); // دریافت کننده
$table->morphs('payable')->nullable();// واسه چه موردی
$table->string('price'); // مبلغ پرداخت شده
$table->string('balance')->nullable();//موجودی حساب
$table->timestamps();
$table->foreign('gateway_id')->references('id')->on('gateway_transactions')
->onDelete('cascade')->onUpdate('cascade');
@hesammousavi
@elyasbeshkani
@ali.bayat
@juza66
@rezajashnsaz0011
@milad
به نظر من میشه از مدل های Payment و Account و Transaction استفاده کرد
بدین ترتیب:
بطور کلی میشه یک رابطه یک به یک بین Transaction و Payment
و یک رابطه یک به چند بین Account و Payment
توجه داشته باشید این یک روش هست و ممکنه شما روش های دیگه ای رو برای ساختار اپلیکیشن تون در نظر گرفته باشید.
بسته به ساختار کلی اپلیکیشن و نیاز های نهایی برای ساخت کوئری ها، این روش ها میتونند تغییر کنند و هیچ کدوم بهتر از دیگری نیستند. در واقع هر کدوم مورد استفاده خودشون رو دارند.
پیروز باشید.
@ali.bayat
ممنون از پاسختون، الان این مایگریشن من با چیزی که شما دادین یکیه حدودا، فقط از morph استفاده شده، اونوقت برای پرداخت های با کیف پول و انلاین یه فیلد دیگه اضافه بشه که مشخص کنه این پرداخت با چی بوده، به نظرتون خوبه همین دیگه؟
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟