Yii Framework Forum: Как Из Формы Create Сделать Виджет? - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Как Из Формы Create Сделать Виджет? Как правильно подключить виджет к ДБ? Rate Topic: -----

#1 User is offline   Zzajeilo 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 12
  • Joined: 08-May 13

Posted 21 May 2013 - 06:39 PM

У меня проблема. Gii создал модель и создал CRUD.
...index.php?r=model/create
В этом месте всё работает четко, но как только я делаю из формы виджет, то виджет не хочет работать. Или я неправильно делаю виджет.
...this->widget('application.components.footerWidget');
Виджет стоит в футере, то есть, он виден всегда и для всех. Помогите подсказкой.Attached File  Site.JPG (38.03K)
Number of downloads: 6
Как правильно подключить виджет?
0

#2 User is offline   Zzajeilo 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 12
  • Joined: 08-May 13

Posted 21 May 2013 - 07:16 PM

То, что код рабочий, у меня сомнений нет. Виджет создает запись на странице ...model/create, а на других страницах не отрабатывается.
0

#3 User is offline   Artur Zhdanov 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 12-May 13
  • Location:Russia

Posted 22 May 2013 - 01:51 AM

Судя по скриншоту у Вас одна и та же форма на странице встречается дважды. Если под "неработает" Вы подразумеваете что не работает js-валидация, то думаю дело в одинаковых id у HTML элементов.
Помог с вопросом? Нажми тут ↓
0

#4 User is offline   Zzajeilo 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 12
  • Joined: 08-May 13

Posted 22 May 2013 - 04:03 AM

View PostArtur Zhdanov, on 22 May 2013 - 01:51 AM, said:

Судя по скриншоту у Вас одна и та же форма на странице встречается дважды. Если под "неработает" Вы подразумеваете что не работает js-валидация, то думаю дело в одинаковых id у HTML элементов.

Под словом "работает" я подразумеваю добавление записи в базу данных. Id у HTML элементов в самом деле одинаковые. Но! на странице добавления записи работают обе кнопки Create с одинаковыми айди. То есть, и из формы виджета запись можно добавить и из формы страницы. На других страницах запись из формы виджета в базу данных не получается. Форма задумывается, введенный текст изчезает, а записи в базу данных не происходит.
Скорее всего тут причина в контроллере. На странице Create Yii обрабатывает команду "...?r=model/create", затем modelController вызывает акцию Create и обрабатывает POST.
На любых других страницах, например "...?r=site/index" modelController ничем не вызывается, посему мой простенько сработанный виджет не может добавлять запись в базу данных на страницах, которые не вызывают "...?r=model/create".
Но мне нужно на любой странице получить доступ к modelController и вызвать акцию Create. Что мне нужно для этого сделать? Прошу совета.
1

#5 User is offline   Artur Zhdanov 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 112
  • Joined: 12-May 13
  • Location:Russia

Posted 22 May 2013 - 09:26 AM

<?php $form=$this->beginWidget('CActiveForm', array(
    'id'=>'form-id', 
    'action' => Yii::app()->createUrl('controller/action '),
    ...
)); ?>

Помог с вопросом? Нажми тут ↓
1

#6 User is offline   Zzajeilo 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 12
  • Joined: 08-May 13

Posted 22 May 2013 - 02:21 PM

View PostArtur Zhdanov, on 22 May 2013 - 09:26 AM, said:

<?php $form=$this->beginWidget('CActiveForm', array(
    'id'=>'form-id', 
    'action' => Yii::app()->createUrl('controller/action '),
    ...
)); ?>



Спасибо, задача решена! Чтобы форма из виджета добавляла запись, нужно отправлять её данные на страницу views нужного нам контроллера. Запись в БД сделана.
Мой контроллер - modelController и вот такая запись кода не срабатывает:
'action' => Yii::app()->createUrl('modelController/action '), ;D
зато срабатывает вот такой код:
'action' => Yii::app()->createUrl('Model/action '), :D
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users