2010-04-09 3 views
0

Je suis un débutant à grails/extjs Je développe un outil de configuration basé sur le Web pour mon équipe. Mon problème est avec comboboxes de extjs J'ai trois comboxes à distance (plusieurs à un hibernate mappng) .J'utilise hiddenName pour soumettre son champ de valeur (qui est la clé de primay de la base de données) au lieu de son champ d'affichage qui est le nom que je reçois en le rendant comme json.some comment je vois que si je sélectionne diff index autre que est chargé à partir de DB et essayez de le mettre à jour. Il l'envoie définitivement en tant que params mais en save méthode de grails il n'est pas mis à jour.Impossible d'enregistrer le combo extjs en utilisant le contrôleur de grails

Je veux comprendre Pourquoi? J'ai collé des extraits de la méthode combobox et des grails?

{ 
      xtype : 'combo', 
      id:'cpsServerid', 
      fieldLabel : 'CpsServer', 
      name : 'cpsServer', 
      //hiddenId:'cpsID', 
      hiddenName:'cpsID', 
       store: cpsServerStore, 
      displayField:'NAME', 
      valueField:'ID', 
      editable:true, 
      typeAhead:true, 
      mode:'remote', 
      triggerAction:'all', 
        width:300, 
      autoScroll:true, 
      selected:name, 
      selectOnFocus:true}, 

GRAILS CONSERVER

def saveApplicationSubscription = { 
     println "saveApplicationSubscription, params = $params" 
     ApplicationSubscription subscription 

    if (params.id) { 
      subscription = ApplicationSubscription.get(params.id as int) 
      subscription.cpsServer = CpsServer.get(params.cpsID as int) 
      subscription.topic = params.topic 
       subscription.description = params.description 
       subscription.subscriberApplication = SubscriberApplication.get(params.subAppID as int) 
       subscription.outputQueue = OutputQueue.get(params.outputID as int) 
       bindData(subscription , params) 
     } 
    else { 
      params.id = 0 
      subscription = new ApplicationSubscription(params) 
      subscription.id = params.id as int 
      subscription.cpsServer = CpsServer.get(params.cpsID as int) 
      subscription.topic = params.topic 
      subscription.description = params.description 
      subscription.subscriberApplication = SubscriberApplication.get(params.subAppID as int) 
      subscription.outputQueue = OutputQueue.get(params.outputID as int) 
     // subscription.messageFormat = params.messageFormat 


     } 
if (subscription.save()) { 

     log.info("Saved ApplicationSubscription $subscription") 
     render([success: true] as JSON) 

    } 
    else { 
     log.info("Failed to save ApplicationSubscription $subscription, errors = ${subscription.errors}") 
     render([success: false, errors: subscription.errors] as JSON) 
    } 
} 

Je voudrais vraiment apperciate toute aide

Répondre

0

Avez-vous vérifié dans l'onglet de la console Firebug que votre POST ressemble à ce que vous attendez? Cela confirmerait si votre problème est sur le client ou le serveur.

Questions connexes