Question

développe actuellement une application web mobile RoR pour afficher des informations sur des endroits particuliers.

L'appel Let 'installations' ces lieux. Chaque installation comporte au moins un « lieu », qui est une instance spécifique de l'installation. Ainsi, par exemple une installation pourrait être un parc de la ville, et l'un de ses sites correspondants pourrait être le parc lors d'un concert ou d'un événement. Si cet exemple est source de confusion, le mépris, il n'a pas beaucoup d'importance.

Les données de ces installations et leurs lieux correspondant est hébergé sur Amazon Web Service S3 comme des objets JSON. J'utilise HTTParty lire dans les objets JSON AWS ??S3. Je les lis actuellement comme ceci:

Dans le contrôleur d'application je:

inlcude HTTParty
base_uri 's3.amazonaws.com/our_bucket'
before_filter :set_up_httparty

def set_up_httparty
  @installation = "INSTALLATION"
  @venue = "VENUE"
  @dir_url = "/#{@installation}/#{@venue}/"
end

Dans mes contrôleurs correspondants, où je reçois des informations distinctes je:

response =
  ApplicationController.get("#{@dir_url}/ConstantUniqueName.json")

Actuellement, je suis hardcoding valeurs INSTALLATION et VENUE pour pointer vers un ensemble spécifique de dossiers. Cela fonctionne très bien, mais je dois être en mesure de prendre ces valeurs de l'URL comme ceci:

www.themobilewebapp.com/INSTALLATION/VENUE/index

Maintenant, je suis sûr qu'il est très probablement peut-être passer dans ces valeurs avec params comme ceci:

www.themobilewebapp.com/index?installtion=INSTALLATION&venue=VENUE

Mais, si possible, je voudrais mettre mon URL est la voie précédente. Je dois avoir être de l'URL conviviale pour les utilisateurs de mettre eux-mêmes et ont des codes SCFQ pointent directement à une installation spécifique et le lieu correspondant.

Si pas possible d'être en mesure de faire quelque chose comme www.mobwebapp.com/INSTALL/VEN/index est alors possible de mettre en place des sous-domaines pour chaque lieu et ensuite tirer dans ce lieu comme une chaîne?

Toute aide est appréciée !! Merci!

Était-ce utile?

La solution

Si vous mettez dans votre fichier config/routes.rb alors vous serez en mesure d'utiliser le modèle d'URL que vous souhaitez:

match ':installation/:venue/index', :controller => :venue, :action => :index
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top