رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
تگها (حل شد)
#1
چطوری میشه مثل وردپرس به هر پست برچسب اختصاص بدیم و موقع ویرایش اونا رو ویرایش کنیم با برچسب زدن مشکل زیادی ندارم ولی با ویرایش برچسب مشکل دارم.یعنی وقتی تیک چک باکس رو برداشتیم و سابمیت کردیم باید اون رکوردها حذف بشن؟ یا comfirmed اونا 0 بشه؟
پاسخ
تشکر شده توسط:
#2
برای حذف بستگی به سناریوی خودتون داره. توی برخی از پروژه ها برای جدول واسط دیگه فیلد confirmed نمیگذارن و وقتی برچسب رو برمیدارین، باید کاملاً حذف کنید. اما برخی پروژه ها ممکنه به Soft Delete نیاز داشته باشن. مثلاً موقتاً یه برچسب رو نشون ندیم. اینجور جاها میشه confirmed رو صفر کرد.
پاسخ
تشکر شده توسط: hamid
#3
دستی نمیتونم با CActiveForm چطوری دو تا مدل رو با هم استفاده کنم؟
پاسخ
تشکر شده توسط:
#4
متوجه منظورتون نمیشم. لطفاً بیشتر توضیح بدین.
پاسخ
تشکر شده توسط:
#5
برای اینکه یک پست درج کنیم میاییم جدول پست رو new میکنیم و مقادیر $_Post رو بهش میدیم حالا تگها هم باید به فرم اضافه بشن یعنی دو تا مدل میشه به اضافه اینکه موقع ویرایش پست برچسب های قبلی باید تیک داشته باشن.
دقیقا مثل cms وردپرس
پاسخ
تشکر شده توسط:
#6
شما نباید به این شکل کار کنید. یا میتونید با AJAX تگهای انتخابی رو بفرستین و ذخیره کنین و یا اینکه برای تگها با CActiveForm کار نکنید و با CHtml::dropDownList کار کنید. توی اکشن هم برای مقادیر دریافتی حلقه بسازین و برای هرکدوم یک شئ از کلاس جدول واسطه ایجاد و ذخیره کنید.
پاسخ
تشکر شده توسط: hamid
#7
وقتی یه پست رو میخواییم ویرایش کنیم چی؟ اگه دراپ دان باشه از کجا بدونیم چه برچسبهایی رو داره؟
پاسخ
تشکر شده توسط:
#8
فهمیدم باید وقتی دکمه ویرایش رو میزنیم توی یه جدول تگاشو بیاریم و با دکمه حذف کنیم.
پاسخ
تشکر شده توسط:
#9
به این مثال دقت کنید:

توی کنترلر:
$options = array();
foreach($model->tags as $tag) {
    $options[$tag->id] = array('selected'=>'selected');
}
$tags = CHtml::listData(Tags::model()->findAll(), 'id', 'name');
$this->render('form', compact('model', 'options', 'tags'));

توی ویو:
echo CHtml::dropDownList('Tags[]', null, $tags, array('multiple' => 'multiple', 'options' => $options));
پاسخ
تشکر شده توسط: hamid
#10
با کمک خاصیت options میتونید برای هر عنصر توی تگ Select خاصیتهای سفارشی ست کنید.
پاسخ
تشکر شده توسط: hamid




کاربران در حال بازدید این موضوع: 1 مهمان