Il serait utile que vous nous donniez plus d'informations sur vos modèles de données. Je vais esquisser ce que je pense que vous avez basé sur votre question.
class Product < ActiveRecord::Base
belongs_to :category
end
class Category < ActiveRecord::Base
has_many :products
end
et en supposant que vous avez vos itinéraires mis en place:
resources :categories do
resources :products
end
ce que vous devez faire est wireup l'événement change
du select_tag
pour demander une liste de produits à base de l'identifiant de la catégorie qui a été sélectionné .
$('select#categories').change(function(){
var category_id = $(this).find('option:selected').val();
$.getJSON(
'/categories/' + category_id + '/products',
function(response) {
// render your template on the page here
}
);
});
J'ai écrit un jQuery plugin pour simplifier les interactions RESTful de base avec un contrôleur Rails, il pourrait être écrit comme:
$('select#categories').change(function(){
var category_id = $(this).find('option:selected').val();
$.read(
'/categories/{category_id}/products',
{ category_id: category_id },
function (response) {
// render your template
}
);
});
Alors que $.read
n'est pas beaucoup plus simple que $.getJSON
, les autres opérations vous sauvera beaucoup de frappe.
Le reste de l'implémentation réside dans le contrôleur, mais vous avez beaucoup plus de marge de manœuvre pour implémenter cela, donc je ne peux pas vraiment deviner ce qui vous serait utile sans plus d'informations.
Bonjour Adam. merci pour les détails explication .. Désolé de ne pas donner beaucoup de détails .. Je vais essayer votre code et mettre à jour le statut ... merci encore ... sameera – sameera207
merci adam, je l'ai enfin mis en marche, merci pour l'aide – sameera207
@ sameera207, pourriez-vous s'il vous plaît partager le code qui a finalement fonctionné pour vous? travaillant sur une tâche similaire moi-même et trouvé ce poste. Merci beaucoup! – Lievcin