IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ruby Discussion :

Problème envoi email avec actionMailer


Sujet :

Ruby

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Points : 54
    Points
    54
    Par défaut Problème envoi email avec actionMailer
    Bonsoir à tous. M'étant reconverti dans la programmation avec RoR, je suis confronté à un problème.
    Je fais un test d'envoi d'email en local avec ActionMailer, en utilisant les données d'un formulaire de contact. Pour rappel, j'utilise MailDev comme gestionnaire d'email local.

    Le problème, c'est que quand je j'appuie sur le bouton envoyé, mon message flash me dit que l'email est envoyé alors que je ne reçois rien dans MailDev.

    Voici le code des différents fichiers:

    Fichier development.rb

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    Rails.application.configure do
      # Settings specified here will take precedence over those in config/application.rb.
     
      # In the development environment your application's code is reloaded on
      # every request. This slows down response time but is perfect for development
      # since you don't have to restart the web server when you make code changes.
      config.cache_classes = false
     
      # Do not eager load code on boot.
      config.eager_load = false
     
      # Show full error reports.
      config.consider_all_requests_local = true
     
      # Enable/disable caching. By default caching is disabled.
      if Rails.root.join('tmp/caching-dev.txt').exist?
        config.action_controller.perform_caching = true
     
        config.cache_store = :memory_store
        config.public_file_server.headers = {
          'Cache-Control' => "public, max-age=#{2.days.seconds.to_i}"
        }
      else
        config.action_controller.perform_caching = false
     
        config.cache_store = :null_store
      end
     
      # Don't care if the mailer can't send.
      config.action_mailer.raise_delivery_errors = false
     
      config.action_mailer.perform_caching = false
     
      # Print deprecation notices to the Rails logger.
      config.active_support.deprecation = :log
     
      # Raise an error on page load if there are pending migrations.
      config.active_record.migration_error = :page_load
     
      # Debug mode disables concatenation and preprocessing of assets.
      # This option may cause significant delays in view rendering with a large
      # number of complex assets.
      config.assets.debug = true
     
      # Suppress logger output for asset requests.
      config.assets.quiet = true
     
      # Raises error for missing translations
      # config.action_view.raise_on_missing_translations = true
     
      # Use an evented file watcher to asynchronously detect changes in source code,
      # routes, locales, etc. This feature depends on the listen gem.
      # config.file_watcher = ActiveSupport::EventedFileUpdateChecker
     
      config.action_mailer.delivery_method = :smtp
     
      config.action_mailer.smtp_settings = {
     
        address:  'localhost',
        port: 1025,
        domain: 'localhost'
        }
     
    end
    Fichier contact.html.erb

    Code JSP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <h1>Contact form</h1>
     
    <%= form_tag "/contact", method: "post" do %>
     
      <input type="text" name="name" placeholder="Votre nom"/><br><br>
     
      <input type="email" name="email" placeholder="Votre email"/><br><br>
     
      <textarea name="message" placeholder="Votre message"></textarea><br><br>
     
      <input type="submit" value="Envoyer"/>
    <% end %>

    Fichier contact_mailer.rb

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    class ContactMailer < ApplicationMailer
     
      def contact(user_name,user_email,user_message)
        @user_name = user_name
        @user_email = user_email
        @user_message = user_message
     
        mail(to: user_name, subject: "Member inscription")
     
      end
    end
    Controller pages

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    class PagesController < ApplicationController
     
      def contact
     
      end
     
      def create
     
        ContactMailer.contact(params[:name], params[:email], params[:message]).deliver_now
     
        flash[:info] = "Message envoyé"
        redirect_to root_path
     
      end
    end
    Fichier Routes.rb

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Rails.application.routes.draw do
      root 'pages#contact'
     
      post 'contact' => 'pages#create'
     
      # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
    end

  2. #2
    Membre averti Avatar de Kennel sébastien
    Homme Profil pro
    Développeur
    Inscrit en
    Septembre 2008
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Septembre 2008
    Messages : 226
    Points : 329
    Points
    329
    Par défaut
    Bonsoir Abbé,

    T'as déjà fait un test en ligne, pour voir si ça passe ?

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Citation Envoyé par Kennel sébastien Voir le message
    Bonsoir Abbé,

    T'as déjà fait un test en ligne, pour voir si ça passe ?
    Non non, pour le moment, je test en local

  4. #4
    Membre averti Avatar de Kennel sébastien
    Homme Profil pro
    Développeur
    Inscrit en
    Septembre 2008
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Septembre 2008
    Messages : 226
    Points : 329
    Points
    329
    Par défaut
    Oui, oui, mais c'est peut-être là le problème…

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Ok, je vais tester pour voir.

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Le test en local passe à présent. Je vais tester demain en ligne.
    Apparemment, les méthodes concernées doivent avoir le même nom si je ne me trompe pas.

  7. #7
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2015
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2015
    Messages : 52
    Points : 54
    Points
    54
    Par défaut
    Bon, je ne peux pas tester en ligne. Etant novice en Ruby on Rails, je me rends compte que mon hébergeur actuel ne supporte pas Ruby on Rails. Je suis donc dans l'obligation de changer d'hébergeur.
    Merci bien à vous.

  8. #8
    Membre extrêmement actif
    Avatar de Madmac
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2004
    Messages
    1 685
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 685
    Points : 1 376
    Points
    1 376
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par Abbé Assy Voir le message
    Bon, je ne peux pas tester en ligne. Etant novice en Ruby on Rails, je me rends compte que mon hébergeur actuel ne supporte pas Ruby on Rails. Je suis donc dans l'obligation de changer d'hébergeur.
    Merci bien à vous.
    Avez-vous envisagez de le convertir en JRuby ?

  9. #9
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2017
    Messages : 11
    Points : 16
    Points
    16
    Par défaut
    ca change progressivement, les hebergeurs s'y mettent

    en 2012 quand j'ai commencé à utiliser rails , il fallait passer par un VPS chez gandi

    maintenant vous trouverez n'importe quel hébergeur proposant une solution sans VPS


    enfin dans tous les cas, je préfère avoir du m'y mettre en 2012, maintenant je suis assez à l'aise avec la gestion des serveurs linux, ce qui est pratique

    du coup mon seul windows est une VM win10 sur mon ubuntu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème envoi mail avec java
    Par poupouce5 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 12/06/2008, 23h22
  2. [Spring Mail] aide sur envoi email avec spring
    Par Jacobian dans le forum Spring
    Réponses: 1
    Dernier message: 30/05/2008, 13h18
  3. Envoi Email avec serveur Exchange
    Par NoBru dans le forum ASP.NET
    Réponses: 15
    Dernier message: 21/05/2008, 09h04
  4. Envoi email avec Outlook
    Par User dans le forum Access
    Réponses: 9
    Dernier message: 23/07/2006, 18h04
  5. [Mail] Envoi email avec php
    Par laymounos dans le forum Langage
    Réponses: 8
    Dernier message: 01/06/2006, 14h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo