PDA

View Full Version : جداسازی جدول user و admin به صورت multiauth



rahahost
جمعه 20 تیر 1393, 20:19 عصر
سلام به دوستان لاراولی ، وقت بخیر .
از اونجایی که انجمن فارسی درست و درمونی برای لاراول نداریم ، مجبور شدم اینجا سوالم رو بپرسم که شاید دوستان کمکی کنن :
همونطور که میدونید لاراول بطور پیشفرض از یک جدول برای نگهداری user استفاده میکنه و کلاس ها احراز هویتش فقط برای یک جدوله !

فرض کنید سه تا جدول مختلف داریم برای مدیران ، نویسنده ها و کاربران ( میدونم که مدیرا و نویسنده میشه با چندتا فیلد و ... تفکیک بشن اما برای حفظ نظم و ترتیب میخوام این کار رو انجام بدم ) ، برای اینکه بتونم از احراز هویت لاراول برای هر سه جدولم استفاده کنم ، باید چه کاری انجام بدم ؟ به معرفی یکی از دوستان یه سایتی رو دیدم که توضیح داده اما چون انگلیسیم تعریفی نداره ، چیزه زیادی ذستگیرم نشد .

ممنون میشم راهنماییم کنید .
اینم سایتی که اشاره کردم : http://stackoverflow.com/questions/18785754/authentication-with-2-different-tables

farzadyazdan
یک شنبه 22 تیر 1393, 18:01 عصر
با سلام
در ابتدا باید عرض کنم که این کاری که شما میکنید به نظر من روش معمولی برای نگهداری اطلاعات کاربران نیست (که البته خودتون هم اشاره کردین) و برعکس نظم و ترتیب شما رو در طی کار خواهد گرفت و بهتره از ساختار های معمول استفاده کنید البته من یک پکیج به شما معرفی می کنم که این کار را به بهترین و راحتترین راه ممکن براتون انجام میده https://cartalyst.com/manual/sentry

در صورتی که مشکل داشتین بگین تا راهنمایتون کنم

rahahost
دوشنبه 23 تیر 1393, 14:56 عصر
با سلام
در ابتدا باید عرض کنم که این کاری که شما میکنید به نظر من روش معمولی برای نگهداری اطلاعات کاربران نیست (که البته خودتون هم اشاره کردین) و برعکس نظم و ترتیب شما رو در طی کار خواهد گرفت و بهتره از ساختار های معمول استفاده کنید البته من یک پکیج به شما معرفی می کنم که این کار را به بهترین و راحتترین راه ممکن براتون انجام میده https://cartalyst.com/manual/sentry

در صورتی که مشکل داشتین بگین تا راهنمایتون کنم

ممنون از راهنماییتون .

به نظر شما منی که سایتم به چندین بخش مجزا تقسیم میشه و هر بخش فیلدهای مختص خودش رو داره ، نباید دو بخش جدا واسه مدیرا و کاربرا داشته باشم ؟

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

farzadyazdan
دوشنبه 23 تیر 1393, 23:00 عصر
شما باید یک جدول برای کلیه کاربران ایجاد کنید و یک فیلد در این جدول برای مشخص کردن نوع کاربر (admin, user) ایجاد کنید از این جدول برای ثبت کاربر و لاگین استفاده کنید حالا برای user ها یک جدول ایجاد کنید به عنوان مثال با نام user_setting و جدولی دیگر به عنوان admin_settings حالا در هر دو جدول فیلدی تعریف کنید به عنوان user_id که مشخص کننده این هست که هرکدام از این تنظیمات متعلق به کدام کاربر هست. به همین سادگی و میتونید از امکانات فوق العاده Eloquent برای ایجاد رابطه ها استفاده کنید.:تشویق:

در صورتی که احتیاج به طراحی ساختار دیتابیس دارین یک پیغام خصوصی بفرستید تا ایمیل بدم بهتون