2012-02-16 3 views
0

Думаю, я застрял здесь. У меня есть модель (Test) с тремя полями: id, name, name2. Поэтому я хочу что-то там написать и нажать кнопку «Применить» внизу, и если все поля заполнены и прошли проверку (я думаю, это я должен сделать в модели Test.rb, да?) И перейти на localhost: 3000/some/where and если я оставил некоторая поданная (имя или имя2) незаполненной, поэтому я получаю сообщение типа «ОШИБКА».netzke FormPanel

test_panel.rb

class TestPanel < Netzke::Basepack::FormPanel 


    js_mixin :actions 


    def configuration 
     super.merge(
      :name   => :test_panel, 
      :model   => 'Test', 
      :title   => "TEST PANEL", 
     ) 
    end 

end 

action.js

{ 
    onApply: function() { 
     var form = this.getForm(); 
      if (form.isValid()) { 
       this.Apply(form.getFieldValues(), function(success) { 
        if (success) { 
     window.location = 'some/where'; 
      } else { 
       Ext.Msg.show({ 
        title: 'FF', 
        msg: 'I guess you have an error!!', 
        buttons: Ext.Msg.OK, 
        icon: Ext.Msg.WARNING }); 
      } 
      }, this); 
     } else { 
        Ext.Msg.show({ 
        title: 'FF', 
        msg: 'Fill all fields!!', 
        buttons: Ext.Msg.OK, 
        icon: Ext.Msg.WARNING }); 
       } 
} 

}

+0

Вы хотите показать сообщение об ошибке Rails? если вы все хотите, вы должны создать конечную точку самостоятельно и установить флеш-сообщение, а затем вернуть {: netzkeFeedback => @flash} – Rafaiel

+0

Какую версию Netzke вы используете? Кроме того, в более ранних версиях Netzke он сильно зависел от имен компонентов. Поэтому я предлагаю вам не устанавливать имена панелей и других элементов управления, отличных от поля. –

ответ

0

Если мое понимание не является правильным не нужно делать ничего с netzke. Просто напишите свои валидаторы в модели рельсов. Если какое-либо поле не прошло проверку, Netzke захватит сообщение проверки с модели рельсов и отобразит его поверх сетки.

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