2017-05-22 2 views
0

J'ai un formulaire pour télécharger un fichier sur mon site:Comment puis-je télécharger un fichier avec un hidden_field?

<%= f.file_field :file %> 

Si je connais le nom du fichier que je veux télécharger, puis-je faire la même chose automatiquement avec un champ caché? Je ne peux pas trouver de syntaxe pour cela n'importe où dans les docs rails.

+3

Si vous voulez, pouvez-vous télécharger un fichier à partir de l'ordinateur des utilisateurs sans leur consentement explicite (c'est-à-dire en appuyant sur un bouton de navigation et en choisissant un fichier), non. – Kris

+0

@Kris Damn, je n'ai jamais pensé à quel point vous pourriez en abuser. Bien sûr, ce n'est pas possible. –

+0

Je ne pense pas que ce soit possible et il est déconseillé de télécharger un fichier sans le consentement de l'utilisateur. – Pramod

Répondre

1

Il est impossible, car il permettrait au navigateur de prendre tous les fichiers sur l'ordinateur de l'utilisateur sans leur autorisation :)

Envoi d'un fichier via un navigateur nécessite le consentement explicite de la part de l'utilisateur par le biais de en appuyant sur le bouton "parcourir" et en choisissant un fichier.

Vous auriez besoin de l'utilisateur pour installer une application personnalisée qui fait cela au lieu d'utiliser un navigateur.

+0

Une telle application pourrait-elle être écrite dans Rails? –

+0

Pas vraiment. Rails est un framework web * server *. L'application serait un * client *, installé sur tous les ordinateurs des utilisateurs. Il pourrait être écrit en Ruby, mais généralement il serait écrit dans un langage compilé (pour faciliter l'installation), vous pouvez vouloir vérifier Crystal (https://crystal-lang.org/) qui a une syntaxe Ruby-comme . – Kris