سلام دوستان؛خسته نباشید،
من از مولتی اث استفاده کردم و چند گارد (ادمین،کاربر،مشتری) ایجاد کردم، حالا میخوام بین اینا یه سیستم گفتگو ایجاد کنم، حالا میخواسم نظر دوستان رو در مورد رابطه هاش بپرسم،
چیزی که من نوشتم به این شکل هست که:
هر گارد میتونه چندین گفتگو داشته باشه و هر گفتگو هم میتونه چندین پیام داشته باشه،به این شکل
/
relation of user with sender conversation.
@return MorphOne
/
public function sender()
{
return $this->morphMany(Conversation::class,'senderable');
}
/
relation of user with receiver conversation.
@return MorphOne
/
public function receiver()
{
return $this->morphMany(Conversation::class,'receiverable');
}
/
return relation of user with conversation.
@return MorphOne
/
public function conversations()
{
return $this->sender() ?? $this->receiver();
}
/
relation of conversation with user_type:admin,user,customer
@return MorphTo
/
public function senderable()
{
return $this->morphTo();
}
/
relation of conversation with user_type:admin,user,customer
@return MorphTo
/
public function receiverable()
{
return $this->morphTo();
}
/
relation of conversation with message.
@return HasMany
/
public function messages()
{
return $this->hasMany(Message::class);
}
حالا میخوام بدونم به این شکل بهینه هست؟یا روش بهتری کسی انجام داده،ممنون میشم راهنمایی کنید
@hesammousavi
@ali.bayat
@Alimotreb
@juza66
@milad
@khanzadimahdi
سلام در قدم اول بنظرم این یک کار غیرضروری و بی مورد بود که از mulit auth استفاده کردید چون فقط باعث افزایش پیچیدگی برنامه میشه، حتی در آینده .
در مورد دوم اگر تصمیم به این کار بگیرید چیزی که مطرح کردید درسته ولی هر ویژگی که بخواید اضافه کنید باید به شکل جدا جدا برای هر گارد تعریف کنید .
ممنون اقای موسوی،خو اخه فیلدهایی که هست واسه هر کاربر متفاوت میشه،اونوقت تعداد زیادی فیلدباید تعریف بشه که واسه هرکدوم پوشش داده بشه،ینی به نظر شما از همون یه گارد استفاده بشه؟چون این سیستم نیاز به اپ اندروید هم داره،و واسه همون میخواستم جدا باشه هر کاربر
خوب نیاز به اپ اندروید داشته باشه، چه مشکلی ایجاد میشه ؟
اگر فیلد متفاوت هر کدوم دارن جدول متفاوت میتونید درست کنید و رابطه one to one با اون اطلاعات
معمولا multi auth تنها باعث پیچیدگی زیاد میشه چون چیزی که شما دارید فکر نکنم نیازی بهش باشه اصلا
ممنون پاسختون،میشه یه مثالی بزنید که کجاها بهتره از multi auth استفاده بشه؟
نمیشه به مثال خاصی اشاره کرد
ولی ببینید هر زمان که فکر میکنید انقدر برنامهاتون بزرگه که نیاز به دوتا جدول مثلا برای کاربران و کافرمایان دارید و هر کدوم ممکنه جداول مختلفی داشتنه باشن که بهشون مرتبط هست اونوقت که میشه گفت میشه از mutli auth استفاده کرد . ولی در اکثر پروژهها واقعا بهش نیازی نیست .
@hesammousavi
اونوقت به این شکل بهتره یه فیلد type تعریف یشه واسه جدا کردنشون؟یا از Acl استفاده بشه؟چون از acl واسه مدیریت استفاده کردم
(ببخشید سوالاتم زیاد شد:))
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟