i trying code netzke::basepack::form contains component( v0.9's :bosses_and_clerks component) result empty form whitout component. way, when replace bosses_and_clerks component grid component (the v0.9's :bosses component) works charm. hope can me. netzke rocks!
here code:
class formbossesandclerks < netzke::basepack::form def configure(c) c.title = "form :bosses_and_clerks" c.items = [ :bosses_and_clerks ] super end component :bosses_and_clerks end
for completion here code of bosses_and_clerks component:
class bossesandclerks < netzke::base # remember regions collapse state , size include netzke::basepack::itempersistence def configure(c) super c.items = [ { netzke_component: :bosses, region: :center }, { netzke_component: :boss_details, region: :east, width: 240, split: true }, { netzke_component: :clerks, region: :south, height: 250, split: true } ] end js_configure |c| c.layout = :border c.border = false # overriding initcomponent c.init_component = <<-js function(){ // calling superclass's initcomponent this.callparent(); // setting 'rowclick' event var view = this.getcomponent('bosses').getview(); view.on('itemclick', function(view, record){ // beauty of using ext.direct: calling 3 endpoints in row, results in single call server! this.selectboss({boss_id: record.get('id')}); this.getcomponent('clerks').getstore().load(); this.getcomponent('boss_details').updatestats(); }, this); } js end endpoint :select_boss |params, this| # store selected boss id in session component's instance component_session[:selected_boss_id] = params[:boss_id] end component :bosses |c| c.klass = netzke::basepack::grid c.model = "boss" end component :clerks |c| c.klass = clerks c.data_store = {auto_load: false} c.scope = {:boss_id => component_session[:selected_boss_id]} c.strong_default_attrs = {:boss_id => component_session[:selected_boss_id]} end component :boss_details |c| c.klass = bossdetails c.boss_id = component_session[:selected_boss_id] end end
Comments
Post a Comment