Question

Je le modèle:

  • User -1---n- Transaction(amount,description, date)
  • User -1---n- TransactionImport -1---n- TransactonImportField(name,value)

(application de suivi des dépenses personnelles).

Ce que je veux atteindre est le suivant:

  1. L'utilisateur ouvre l'URL et colle le CSV avec la liste des transactions.
  2. soumet l'utilisateur il.
  3. les données de configuration du système de CSV dans TransactionImport (rangée) + TransactionImportField (cellulaire).
  4. L'utilisateur peut choisir le moyen de colonne que (quantité, description, date) à partir des données importées dans TransactionImport(Field).
  5. Cliquez Permet d'enregistrer et le système transfère TransactionImport dans la transaction.

Ce que je ne peux pas sembler obtenir est juste le fait que l'étape 3 crée plusieurs enregistrements de TransactionImport (et TransactionImportField connexes).

Ce faisant POST /transaction_imports?csv=abcd devrait produire un enregistrement si nous serions RESTful. Mais le code est censé être quelque chose comme ceci:

# TransactionImportsController
def create
  result = TransactionImports.parse(params[:csv])
  flash[:notice] = result.message
  redirect_to transaction_imports_path
end

Je me rapproche probablement la tâche d'un mauvais angle que je pense que la mise en œuvre ne rentre pas dans le tp inherited_resources .

Pouvez-vous conseiller ce serait la façon la plus classique de la mise en œuvre cela?

Merci,
Dmytrii.

Était-ce utile?

La solution

REST / HTTP n'a pas d'attente que faire POST ne fera que créer un enregistrement. Cela peut-être le comportement par défaut de rails, mais vous ne devriez pas limiter votre conception à cause de cela.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top