2010-08-19 3 views
1

Je suis sur le point de commencer à travailler sur ma deuxième application Rails et je pourrais faire quelques conseils. Cela aidera probablement dans ma tête à taper cette question quand même!Rails structure de l'application, des conseils?

L'objectif de l'application est de suivre et de surveiller les campagnes marketing. Cela rend le son beaucoup plus professionnel que ce que c'est réellement.

Un exemple d'utilisation:

  • liste Ajouter des clients possibles conduit à l'application
  • Créer une nouvelle « campagne » dans l'application
  • Choisissez qui sur la liste des prospects des clients éventuels devraient recevoir le campagne
  • Si et quand une réponse est reçue, il devrait alors être possible d'entrer profil de ce client et de marquer comme "Réponse positive" ou "Négatif Response » etc ..
  • Une fois la campagne terminée, il doit être marqué comme complet, je devrais pouvoir voir dans une campagne profil qui était destinataire de celui-ci et même si je considère le profil d'un chef de file client, je devrais être en mesure pour voir quelles campagnes leur ont été envoyées et quand.

C'est l'idée générale de l'application. J'ai fait le cadre et poussé à GitHub:

http://github.com/dannyweb/Marketing-Manager 

Je suis en train de se faire une idée de ce que les modèles je aurais besoin, quel genre d'associations, ils devraient avoir etc

Je ne suis pas sûr que ce soit à utiliser un élément tel que acts_as_taggable et donner à chaque client une balise liée à un nom de campagne?

Si quelqu'un peut offrir ses pensées ou ses idées sur la façon dont cela devrait être structuré, il serait grandement apprécié.

Comme c'est ma deuxième application Rails - je suis toujours un débutant, alors s'il vous plaît soyez gentil! L'application restera open source sur GitHub si quelqu'un le lit et souhaite utiliser l'application.

Merci,

Danny

+0

Quelle est la question? –

+0

C'est une question de comment allez-vous créer ceci, quelles associations de modèles utiliseriez-vous? – dannymcc

Répondre

2

Je pense que vous ne devriez pas se tourner vers des plugins (comme acts_as_taggable) pour l'instant. Je vais vous donner quelques indications, mais pas beaucoup, parce que déterminer ce qui fonctionne ou non est exactement ce qui vous aidera à en apprendre davantage sur les rails. Donc, vous aurez un modèle 'Client' et un modèle 'Campagne'. Ils ont une relation N-> N (une campagne peut impliquer plusieurs clients et un client peut faire partie de plusieurs campagnes).

Par conséquent, vous aurez également besoin d'une autre table, qui aura le 'client_id' et le 'campaign_id'. Vous voulez également stocker sur cette table si le client a répondu à cela, donc il aura besoin d'un drapeau booléen 'répondu'. Si vous appelez cette table "campaign_messages", le client devra créer un lien vers les campagnes en utilisant "has_many: campaigns,: through =>: campaign_messages". Avec ceux-ci en place, vous serez en mesure de lister tous les clients sur une campagne ou toutes les campagnes d'un client facilement.Vous n'aurez probablement pas besoin de ressource REST pour les messages campaign_messages, uniquement pour les clients et les campagnes.

C'est tout le détail que je vais vous fournir. Je pense que ce serait mieux si vous suiviez votre approche maintenant et demandiez comment il pourrait être amélioré à la place. Vive et bonne chance

+0

Merci Marcos, très apprécié. Je vais continuer à prendre en compte ce qui précède - voyons comment je vais. Merci! – dannymcc

Questions connexes