DbHelp.ru
Маленький Yii блог
Комментарии
Гость: комент
Гость: wahaha
zolter: Друпал на Yii? ))
nastia: http://drupal.org/
JB: Да там просто ад)) мне всего 3 значения нужно чтобы выпадало, все равно спасибо)...



Сервер Ultima Online - Forest Wars (от создателя данного блога)

Подключаем CKEditor

Рубрика: Мелкие заметки на тему Yii

Оцените эту статью:

Рейтинг: 0.00 (0)
19 Окт. 2009
Опубликовать в Twitter Написать в Facebook Опубликовать в своем блоге livejournal.com

Yii Framework Blog img http://dbhelp.ru20099804055649 Многие интересуются вопросами по интеграции всевозможных визуальных редакторов на свой сайт. Сегодня мы поговорим о том, как интегрировать CKEditor на сайт, разработанный на Yii фреймворке...

[+update 19/10/2009]

---

Хотя данный редактор в интернете появился совсем недавно, он по праву заслужил много положительных отзывов со стороны пользователей. Посмотреть как визуально он выглядит, вы можете по этой ссылке

Мой взгляд сегодня порадовало дополнение ckeditor, позволяющее легко интегрировать редактор на сайт. Автор этого расширения Ekstazi.

Установка по пунктам:

  1. Заходим на страницу дополнения во вкладку «Download» и загружаем к себе
  2. Распаковываем в папку protected/extensions
  3. Открываем файл отображения где желаем подключить редактор и добавляем в него следующий код:
    <?php $this->widget('application.extensions.my.ckeditor.CKEditor', array(
    'model'=>$model,
    'attribute'=>'text',
    'language'=>'ru',
    'editorTemplate'=>'full',
    )); ?>

[19/10/2009] Была выпущена новая версия с багфиксами. В ближайшие пару дней она появится в разделе дополнения, кому не терпится обновиться сейчас — качаем тут.

Вот и все! Пользуемся :)



Если хотите опубликовать этот материал у себя - пожалуйста, разместите ссылку на страницу откуда вы его взяли.
Другие yii статьи:

  1. На самом деле Yii является отличным инструментом для создания приложения на PHP. Первое с чем сталкивается разработчик на Yii ... "Kohana хелперы в Yii"

  2. Я надеюсь на эту статью обратят внимание люди которые занимаються обучением по моим урокам «Создаем блог вместе». Сегодня я обнаружил ... "Создаем блог вместе : bugfix #1"

  3. Эта статья устарела т.к. была написана для yii версии 1.0.х; Если вы используете более новую версию - у вас могут ... "Урок 4 : Создаем отдельную страницу для постов (тем)"

[guest] Ekstazi

Было сказано: Воскресенье, 18 Октябрь 2009

Приятно видеть, что меня пиарят. :) Только расширение надо обновить. Я нашел и исправил пару ошибок в нем. Завтра попрошу sam dark а помочь.

[adm] zolter

Было сказано: Воскресенье, 18 Октябрь 2009

Пожалуйста :) Как обновите - дайте плиз знать, отпишу тут.

[adm] zolter

Было сказано: Понедельник, 19 Октябрь 2009

Качаем обновленную версию по ссылке в теме. Спасибо Ekstazi за оперативность! :)

[guest] Ekstazi

Было сказано: Вторник, 20 Октябрь 2009

Sam обновил на оф сайте

[guest] Гость

Было сказано: Воскресенье, 01 Ноябрь 2009

Товаришщи !
почему у меня не видно панели ?
текстареа открывается, и все.
путь к файлу прописал. ошибок не выдает (((

virus3d

Было сказано: Воскресенье, 01 Ноябрь 2009

область ввода пропадает со страницы

[adm] zolter

Было сказано: Воскресенье, 01 Ноябрь 2009

А ты вместо "ns.my.ckeditor.CKEditor" правильный путь прописал?

virus3d

Было сказано: Понедельник, 02 Ноябрь 2009

разобрался с утра.
все пути верные. а ругалось на отсутсвие файла config.js,
поэтому и не грузило. в архиве файла небыло. скачал архив с CKEditor'ом, выдрал оттудова и вставил куда надо. Заработало !

[adm] zolter

Было сказано: Понедельник, 02 Ноябрь 2009

Могу посоветовать еще вот это дополнение yiiframework.com/extension/nh-ckeditor/ оно недавно появилось

[guest] RSol

Было сказано: Вторник, 10 Ноябрь 2009

Для автора этого расширения:
1. Спасибо.
2. Я предлагаю его несколько доработать:
В функции run() сделать, к примеру, так:
$jsname=str_replace(array('[',']'),array('_',''),$name);
$js =<<<EOP
var $jsname = CKEDITOR.replace('{$name}',{$options});
EOP;

[guest] hhh

Было сказано: Пятница, 13 Ноябрь 2009

ppc

[guest] Гость

Было сказано: Пятница, 25 Декабрь 2009

помогите разобраться с


'model'=>$model,
'attribute'=>'text',

какие именно значения нужно указывать?
У меня постоянно ругается что model переменная не определена, а что именно подставлять не совсем понятно...

[adm] zolter

Было сказано: Пятница, 25 Декабрь 2009

У вас есть к примеру модель Demo, а в ней поле textdemo.
Так вот, в ваше отображение (views) надо передать экземпляр модеди $demo, а в поле 'attribute' указать название поля с которым работаем, т.е. 'textdemo'.

Обычно в отображение передают переменную $form, попробуйте model на form заменить

[guest] Гость

Было сказано: Пятница, 25 Декабрь 2009

сделал следующее...
1. создал модель Demo (содержащее атрибут textdemo)
2. сделал экземпляр класса модели Demo, зарендерил его в отоброжение
3. вставил нужный виджет и подставил необходимые данные(model, attribute)
При запеске ругается на переменную language: "Undefined variable: language"
разумеется с этой переменной я ничего не делал, все стоит подефолту
помогите пожалуйста
p.s. если нужно то код контролера, вьювера и модели могу отписать тут...

[adm] zolter

Было сказано: Пятница, 25 Декабрь 2009

Кинь те коды модель+контроллер+отображение на zolter.od@gmail.com

[guest] Гость

Было сказано: Воскресенье, 07 Февраль 2010

у меня такая же проблема "Undefined variable: language"
можно узнать как она была решена?

[guest] zolter

Было сказано: Понедельник, 08 Февраль 2010

Попробуйте удалить 'language'=>'ru', с парраметров виджета.
Скорее всего в вашей версии ru уже стоит по умолчанию

[guest] Vic

Было сказано: Четверг, 20 Май 2010

Про Undefined variable: language" - там надо заменить в конце метода setLanguage $language на $value (наверное, осталось от предыдущего кода)

[guest] Гость

Было сказано: Пятница, 21 Май 2010

Чтобы было понятно, где:


// if(isset($this->allowedLanguages[$language]))
// $this->language=$language;
if(isset($this->allowedLanguages[$value]))
$this->language=$value;
}

[guest] Vic

Было сказано: Пятница, 21 Май 2010

Даже не так, а вот так:


if(isset($this->allowedLanguages[$lang]))
$this->language=$lang;

[adm] zolter

Было сказано: Пятница, 21 Май 2010

Сенк!

[guest] Hfvbkm

Было сказано: Суббота, 12 Июнь 2010

Уважаемый автор, а не подскажете, как подключить такой редактор http://habrahabr.ru/blogs/webdev/94800/#comment_2889662 ?

[guest] zolter

Было сказано: Воскресенье, 13 Июнь 2010

Добрый день,
да, интересный редактор. попробую поковырять и рассказать.

[guest] Рамиль

Было сказано: Воскресенье, 13 Июнь 2010

Вот здесь http://yiiframework.ru/forum/viewtopic.php?f=9&t=1072 сделали расширение, но не пойму как его подключить, у меня возникает ошибка (там в комментариях в конце).

[guest] Гость

Было сказано: Четверг, 12 Август 2010

Вот такая х. вылезает, подскажите, что такое? Fatal error: Call to private method CKEditor::init() from context 'CBaseController' in G:\MySites\yii\framework\web\CBaseController.php on line 148

[guest] Гость

Было сказано: Четверг, 02 Декабрь 2010

Fatal error: Call to private method CKEditor::init() from context 'CBaseController' in C:\vhosts\mb\html\framework\web\CBaseController.php on line 140

чтото я не очень понимаю из-за чего это. ставил все по инструкции, скрипт вставил во вьюшку create. Версия yii 1.1.5 версия CKEditor 3.4.2, released on 4 November 2010.
опыта мало, помогите, пожалуйста

[guest] Гость

Было сказано: Пятница, 03 Декабрь 2010

У меня тоже, че-то не работает, отображается только кусок страницы с формой без стилей и пр., на месте где должен быть CKEditor, тоже ничего нет, подскажите, раньше ставил, на yii1.1.2, щас стоит 1.1.5 может синтаксис какой поменяли?

[guest] паша

Было сказано: Среда, 23 Февраль 2011

Если еще кто-то мучается, я написал в форумах сообщества пару способов, как заставить работать свежие версии (на момент написания это Yii 1.1.6 и CKEditor 3.5.2) вместе.
[url=http://yiiframework.ru/forum/viewtopic.php?f=8&t=42]вот тут[/url]

[guest] паша

Было сказано: Среда, 23 Февраль 2011

блин, как же тут ссылку вставить нормально))))

[guest] Гость

Было сказано: Четверг, 24 Февраль 2011

Тебя все поняли )

[guest] Гость

Было сказано: Понедельник, 11 Апрель 2011

У меня ошибка
Fatal error: Cannot redeclare class CKEditor in Z:\home\blog.loc\www\protected\extensions\ckeditor\CKEditor.php on line 314
Ну никак работать не хочет, что делать? Все делаю по инструкции целый день страдаю, помогите!

[guest] Гость

Было сказано: Понедельник, 11 Апрель 2011

Скажите, пожалуйста, что делать?
Fatal error: Cannot redeclare class CKEditor in Z:\home\blog.loc\www\protected\extensions\ckeditor\CKEditor.php on line 314

Целый день бьюсь, все делаю по инструкции, помогите пожалуйста!

[guest] Гость

Было сказано: Среда, 13 Апрель 2011

CKEditor.php

72: private $skin='kama';
=> public $skin='kama';

90: if(isset($this->allowedLanguages[$language]))
=> if(isset($this->allowedLanguages[$this->language]))

[guest] Гость

Было сказано: Суббота, 30 Июль 2011

а как собственно сохранить данные введенные в поле редактора?(((

[guest] Гость

Было сказано: Понедельник, 01 Август 2011

помогите( как же потом сохранить, обновить данные, введенные в редактор?

[guest] Levik

Было сказано: Вторник, 02 Август 2011

Видимо, нажать кнопочку Save... отправить на сервер, а на сервере - сохранить в контроллере...

[guest] Гость

Было сказано: Четверг, 27 Октябрь 2011

>> Гость
Было сказано: Четверг, 02 Декабрь 2010
Fatal error: Call to private method CKEditor::init() from context 'CBaseController' in C:\vhosts\mb\html\framework\web\CBaseController.php on line 140

чтото я не очень понимаю из-за чего это. ставил все по инструкции, скрипт вставил во вьюшку create. Версия yii 1.1.5 версия CKEditor 3.4.2, released on 4 November 2010.
опыта мало, помогите, пожалуйста

Таже беда. Осваиваю Yii недавно и столкнулся с этой проблемой. Подскажите в какую сторону копать.

[guest] peso

Было сказано: Среда, 02 Ноябрь 2011

не работает ajax-валидация при потере фокуса полем с CKEditor'ом? Как это можно исправить?

[guest] zolter

Было сказано: Среда, 02 Ноябрь 2011

В смысле не работает? именно валидация самого поля едитора или в целом вся? Должно нормально работать, максимум что так это оно не выделит поле эдитора красным т.к. там то не обычный импут

[guest] peso

Было сказано: Среда, 02 Ноябрь 2011

именно полей с CKEditor'oм.

при отправке формы submit'ом все норм,
поля не подсвечиваются, но хотя бы ошибки выводятся.
получается, что при потере фокуса CKEditor'ом валидация не происходит, т.к запрос не отправляется.
могу и сам наваять проверку на JS, но надеюсь, что это можно решить более цивилизованно.

в форме'enableAjaxValidation'=>true, и $this->performAjaxValidation($model); раскоментирован

Оставить комментарий


Код:
Имя: