PDA

View Full Version : نوع validation (حل شد)



under22
جمعه 16 اسفند 1392, 21:25 عصر
من میخام مقدار ورودی از کاربر رو بگیرم و وقتی که میخام در مدل مربوطه عمل validation رو انجام میدم با validation تو متد rules چک کنم که آیا این مقدار در ستون مورد نظر است یا خیر اگر نبود error مربوط به validation رو نشان بدم.
دوستان validation اینی هست که تو متد rules این کارو انجام بده؟؟

MMSHFE
جمعه 16 اسفند 1392, 21:38 عصر
باید از ولیدیتور unique یا بطور دقیقتر از CUniqueValidator (http://www.yiiframework.com/doc/api/1.1/CUniqueValidator/) استفاده کنید.

under22
جمعه 16 اسفند 1392, 21:42 عصر
این ولیدیتور مگه برای این نیست که برای مثال چک کنیم این ایمیل یا این نام کاربری وجود داره یا خیر اگر وجود داشت error »ربوطه رو نشون میده اگه وجود نداشته مقدار رو ذخیره می کنه ؟؟

MMSHFE
جمعه 16 اسفند 1392, 21:43 عصر
خوب شما دقیقاً چی میخواین؟ من از توضیحاتتون همینو متوجه شدم. اگه غیر از اینه، لطفاً بیشتر توضیح بدین.

under22
جمعه 16 اسفند 1392, 21:47 عصر
من یک اتوکمپلت دارم که مقداری رو از کاربر برای insert میگیره منتها این مقداری که کاربر وارد میکنه باید حتما در یک جدول دیگه (که این دو جدول با هم ارتباط دارن) وجود داشته باشه

MMSHFE
جمعه 16 اسفند 1392, 21:50 عصر
آهان پس شما برعکسش رو میخواین یعنی اگه نبود، خطا بده. از CExistValidator (http://www.yiiframework.com/doc/api/1.1/CExistValidator) استفاده کنید.

under22
جمعه 16 اسفند 1392, 21:51 عصر
میشه نحوه استفاده از این ولیدیتور رو توضیح بدید . آخه من هر کاری کردم کار نکرد

MMSHFE
جمعه 16 اسفند 1392, 21:58 عصر
array('keyword', 'exist', 'className'=>'Keywords', 'attributeName'=>'keyword_text'),

under22
جمعه 16 اسفند 1392, 22:03 عصر
میشه لطفا توضیح بدید که تو این کد
attributeName
و

className
چی هستند ؟؟؟

MMSHFE
جمعه 16 اسفند 1392, 22:09 عصر
className اسم کلاس ActiveRecord موردنظر و attributeName هم اسم فیلدتونه. برای مثال، اگه برای جدول tbl_keywords مدل Keywords رو ساخته باشین و اسم فیلدتون هم که میخواین چک کنید توی اون فیلد مقدار واردشده وجود داشته باشه، keyword_text باشه، کد Validation Rule که باید بنویسید، مطابق مثالی هست که گذاشتم.