2010-10-17 5 views
0

J'essaye de faire un simple menu dynamique imbriqué, où les sous-catégories seront montrées basées sur ce que j'ai choisi dans la catégorie. Mais pour le rendre très simple, je voulais juste rendre la même chose dans la sous-catégorie, que je choisisse "Home" ou "Job" (principalement un texte de "montrer le même")rails observer_fields pour les menus dynamiques

In index. Je RHTML cette

<html> 
<head> 
     <%= javascript_include_tag :defaults %> 
</head> 
<body> 

<select id="categories" name="categories"> 
    <option value="1">Home</option> 
    <option value="2">Job</option> 
</select> 

<%= observe_field "categories", :update => "subcategories", 
:url => { :controller => "hello", :action => "getsubcategories" } %> 

<select id="subcategories" name="subcategories"> 
    <option> 
    </option> 
</select> 

</bod> 
</html> 

pour le contrôleur, j'ai ce

class HelloController < ApplicationController 

def index 
end 

def getsubcategories 
    puts "Got inside the controller" 
end 

end 

et getsubcategories.rhtml, il y a seulement 1 ligne

<option value="<%= subcategory.id %>"><%= "show the same" %> 

Il affiche une erreur qui pointe vers layout.erb, qui ne peut pas s'afficher correctement dans le menu des sous-catégories. Je reconnais que l'erreur est probablement dans getsubcategories.rhtml, mais j'ai essayé plusieurs façons, et toujours la même erreur.

Comment puis-je résoudre ce problème? Nous vous remercions de toute orientation

Répondre

0

Vous devez désactiver la mise en page à cette action

def getsubcategories 
    render :getsubcategories, :layout => false 
end 
+0

ah merci! J'ai une autre question, est-il possible de mettre à jour la deuxième table de sélection en utilisant un certain paramètres de la première table. Exemple, sélectionnez la table 1 (à partir de la base de données) a une valeur de clé liée à sélectionner la table 2 (à nouveau de la base de données). J'ai sélectionné 1 option de la table de sélection 1, et dans la table de sélection 2, montrera juste l'option de la base de données qui a la même clé avec la table choisie 1? – heike

+0

Si ma réponse est bonne, votez-la et acceptez-la. Si vous avez une autre question Fait une nouvelle question. – shingara

+0

oui. Je vous remercie. – heike

Questions connexes