2011-05-27 39 views
1

我运行了软件包更新以获取有关我遇到问题的几个宝石的更新,现在我得到一个错误当启动控制台。错误列在下面。我仍然是一个新手(在我的休息时间玩弄它),所以这可能是一件小事。Ran Bundle Update in Rails 3&现在在application.rb中为ActionMailer config setup发生错误

错误:

/Users/chance/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.7/lib/rails/railtie/configuration.rb:77:in `method_missing': undefined method `action_mailer' for #<Rails::Application::Configuration:0x000001020fc280> (NoMethodError) 
from /Users/chance/Sites/AppName/config/application.rb:35:in `<class:Application>' 
from /Users/chance/Sites/AppName/config/application.rb:10:in `<module:AppName>' 
from /Users/chance/Sites/AppName/config/application.rb:9:in `<top (required)>' 
from /Users/chance/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.7/lib/rails/commands.rb:21:in `require' 
from /Users/chance/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.7/lib/rails/commands.rb:21:in `<top (required)>' 
from script/rails:6:in `require' 
from script/rails:6:in `<main>' 

application.rb中 [编辑了主机&密码]

require File.expand_path('../boot', __FILE__) 

require 'rails/all' 

# If you have a Gemfile, require the gems listed there, including any gems 
# you've limited to :test, :development, or :production. 
Bundler.require(:default, Rails.env) if defined?(Bundler) 

module AppName 
    class Application < Rails::Application 
    # Settings in config/environments/* take precedence over those specified here. 
    # Application configuration should go into files in config/initializers 
    # -- all .rb files in that directory are automatically loaded. 

    # Custom directories with classes and modules you want to be autoloadable. 
    # config.autoload_paths += %W(#{config.root}/extras) 

    # Only load the plugins named here, in the order given (default is alphabetical). 
    # :all can be used as a placeholder for all plugins not explicitly named. 
    # config.plugins = [ :exception_notification, :ssl_requirement, :all ] 

    # Activate observers that should always be running. 
    # config.active_record.observers = :cacher, :garbage_collector, :forum_observer 

    # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone. 
    # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC. 
    #config.time_zone = 'Central Time (US & Canada)' 

    # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded. 
    # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s] 
    # config.i18n.default_locale = :de 

    # JavaScript files you want as :defaults (application.js is always included). 
    config.action_view.javascript_expansions[:defaults] = %w(jquery rails) 
    config.action_mailer.default_url_options = { 
     :address    => "smtp.gmail.com", 
     :port     => 587, 
     :domain    => "host.net", 
     :user_name   => "[email protected]", 
     :password    => "******", 
     :authentication  => "plain" 
    # :enable_starttls_auto => true 
    } 
    config.action_mailer.default_url_options = { :host => 'localhost:3000' } 


    # Configure the default encoding used in templates for Ruby 1.9. 
    config.encoding = "utf-8" 
    # Configure sensitive parameters which will be filtered from the log file. 
    config.filter_parameters += [:password] 
    end 
end 

回答

1

参见下面的行代码中的

config.action_mailer.default_url_options = { 
     :address    => "smtp.gmail.com", 
     :port     => 587, 
     :domain    => "host.net", 
     :user_name   => "[email protected]", 
     :password    => "******", 
     :authentication  => "plain" 
    # :enable_starttls_auto => true 
    } 

你放错地方的代码config.action_mailer.smtp_settings
如果轨道3 config.action_mailer.server_settings

4

是不可取的运行bundle update来更新所有的宝石在一走。您应该尝试运行bundle update <gemname>以逐个更新宝石。对于后一种情况,您至少知道由于此更新而导致事情中断。

现在,请回到您的GemfileGemfile.lock的旧版本(我希望您使用的是版本控制),然后运行软件包安装并重新开始,如上所述。

+0

感谢的人,即解决了这一问题。 – Chance 2011-05-30 20:54:52

相关问题