2013-03-11 4 views
0

Как я могу дать ограничение на поле слива в базе данных. В вопросе «Ниже код» поле таблицы содержит длинный текст.so я хочу создать пул для поля вопросов с ограниченной длиной .Как я могу? // В моделиОграниченная длина поля для пули

var $actsAs = array(
      'Sluggable.Sluggable' => array(
      'label' => 'question', 
      'slug' => 'slug', 
      'separator' => '-', 
      'overwrite' => false 
     ) 
     ); 

ответ

0

Посмотрите на source for the behaviour ,

Просто добавьте параметр 'length'=>50 к вашему разрешимому массиву.

Большинство плагинов CakeDC превосходны, но не хватает документации (что должно побудить вас сделать свою работу в понимании того, как работает плагин).

-1

создать функцию

function create_slug($string) { 
     $string = substr($string, 0, 100); 
     $string = preg_replace("/[^a-zA-Z0-9\/_|+ -]/", '', $string); 
     $string = strtolower(trim($string, '-')); 
     $string = preg_replace("/[\/_|+ -]+/", '-', $string); 
     return $string; 
    } 

и использовать его как это

$actsAs = array(
    'Sluggable.Sluggable' => array(
     'label' => 'very & long & question', 
     'slug' => create_slug('very & long & question'), 
     'separator' => '-', 
     'overwrite' => false 
    ) 
); 

print_r($actsAs); 

// ouptut

Array 
(
    [Sluggable.Sluggable] => Array 
     (
      [label] => very & long & question 
      [slug] => very-long-question 
      [separator] => - 
      [overwrite] => 
     ) 

) 
+0

Если я нахожу это, это показывает errorclass Faq extends AppModel { \t var $ name = 'Faq'; переменная $ actsAs = массив ( 'Sluggable.Sluggable' => массив ( 'Метка' => 'вопрос', \t 'пули' => create_slug ('вопрос'), 'разделитель' => '-' , 'overwrite' => false ) ); – Hareesh

Смежные вопросы