Salut
j’ai défini une ressource Message qui me permet de garder la trace des
messages reçus ou envoyés entre des users…
class Message < ActiveRecord::Base
belongs_to :sender, :foreign_key => ‘from_id’, :class_name => “User”
belongs_to :receiver, :foreign_key => ‘to_id’, :class_name => “User”
…
class User < ActiveRecord::Base
has_many :messages_as_sender, :foreign_key => ‘from_id’, :class_name
=> ‘Message’
has_many :messages_as_receiver, :foreign_key => ‘to_id’, :class_name
=> ‘Message’
has_many :senders, :through => :messages_as_sender
has_many :receivers, :through => :messages_as_receiver
…
pour l’instantj’ai dans routes.rb
map.resources :users do |users|
users.resources :messages
end
je peux donc créer des nouveaux messages envoyé par le user 5 en
utilisant un url comme
http://0.0.0.0:3000/users/5/messages/new
j’aimerais définit une route pour envoyer des nouveau messages à un user
pré-déterminé, par exemple de 5 à 25… je pensais utiliser une action
spécifique send …
http://0.0.0.0:3000/users/5/messages/send… mais comment spécifier le 25
dans l’url ???
dois-je modifie la route par exemple en écrivant :
map.resources :users do |users|
users.resources :messages , :new => { :send => get}
end
merci de votre aide