آیا می‌توان متدهای CRUD را به عنوان یک Utility کلاس داشت؟

پرسیده شده
فعالیت 1408 روز پیش
دیده شده 634 بار
0

سلام و احترام

 

سوالم اینکه میشه متدهای CRUD را به عنوان یک Utility کلاس داشت؟ ینی اینکه مجبور نباشی به خاطر این چهارتا عملیات اونا رو extend کنی و فقط به عنوان Utility کلاس  use کنی و استفادشون کنی. 

فایل پیوست

امیر صالحی
امیر صالحی

27 خرداد 99

2

مورد تایید استاد

حذف شده

سلام.

دقیق متوجه نشدم منظورتون چیه.

ولی اگه منظورتون اینه که یک CRUD داشته باشین و در تمام کلاس ها از همین استفاده کنید این روش منطقی نیست.

مثلا برای User و Blog اگر عملیات create رو در نظر بگیریم، هر کدومشون عملیات متفاوت و پراپرتی های(فیلد جداول) متفاوتی دارن.

از طرف دیگه اگر معماری MVC رو در نظر بگیریم،  در همین مثال بالا User و Blog هر کدومشون Model و Controller و View ای مستقل از یکدیگر دارن. عمل CRUD در کنترلر هر کدومشون قرار میگیره و بعنوان یک Action در نظر گرفته میشه.

بصورت کلی آدرس هامونو در MVC میتونیم این شکلی در نظر بگیریم:

http://example.com/index.php?r=controller/action

بعد برای User اگر بخوایم اکشن Create رو انجام بدیم:

http://example.com/index.php?r=user/create

اگر این آدرس رو در مرورگر باز کنیم، متد actionCreate فراخوانی میشه چک میکنه که فرمی سابمیت شده یا نه و چون در مرورگر باز کردیم و POST انجام نشده، view ی مربوط به create برای user باز میشه و فرمی برای کاربر نشان داده میشود و وقتی form رو submit میکنیم، باز هم این متد فراخوانی میشه اما این بار عملیات داخل if POST انجام میشه برای insert و ...

 

همین سازو کارو برای Blog و ... در نظر بگیرید میبینیم هر کدوم CRUD جدایی داره و همین CRUD برای کاربر View های متفاوتی مرتبط با کنترلرو باز میکنه.

 

اگر منظور سؤالتون چیز دیگه ای بود، بگید تا بیشتر توضیح بدم.

فایل پیوست

محسن موحد

توسط

محسن موحد

28 خرداد 99

حذف شده
سلام آقای موحد، تشکر از توضیحاتی که دادید
امیر صالحی

28 خرداد 99

حذف شده
سلام. خواهش میکنم??
محسن موحد

28 خرداد 99