小编Sac*_*ngh的帖子

date_field_tag,我如何设置默认日期?[Ruby on rails]

我想设置一个默认日期,实际日期,例如我如何设置它?

<%= date_field_tag(:datetime_ida, value = nil, options = {})%>

另外,我如何在组合框中设置默认值

<%= select_tag :children_quantity, options_for_select([['0 Children', 0], ['1 Children', 1], ['2 Children', 2], ['3 Children', 3], ['4 Children', 4], ['5 Children', 5]], 1) %>
Run Code Online (Sandbox Code Playgroud)

顺便说一句,date_field_tag和date_field之间有什么区别?

ruby default ruby-on-rails date datefield

5
推荐指数
1
解决办法
5409
查看次数

AWS cognito忘记了密码API问题

我正在使用AWS Cognito的忘记密码API,它的工作正常.但我面临一个问题.我使用手机号码注册,稍后我将电子邮件属性添加到该用户池记录并致电forgot password API它发送手机号码验证码,但我希望它通过电子邮件发送,我该怎么办呢?这是我的代码.

AWS_COGNITO.forgot_password({ client_id: ENV['AWS_WEB_APP_ID'], username: 'valid username'})
Run Code Online (Sandbox Code Playgroud)

根据API文档,#forgot_password仅在哈希值中使用两个值

如果我需要更多信息,请告诉我.谢谢

ruby amazon-web-services aws-cognito

5
推荐指数
1
解决办法
329
查看次数

尝试安装 tesserocr 时出错

当我尝试安装时,我不断收到同样的错误

(env) vagrant@vagrant:~$ pip install tesserocr
Collecting tesserocr
  Using cached tesserocr-2.1.3.tar.gz
Building wheels for collected packages: tesserocr
  Running setup.py bdist_wheel for tesserocr ... error
  Complete output from command /home/vagrant/src/env/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-4K2D6A/tesserocr/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmp5p5G1lpip-wheel- --python-tag cp27:
  running bdist_wheel
  running build
  running build_ext
  Failed to extract tesseract version from executable: [Errno 2] No such file or directory
  Supporting tesseract v3.04.00
  Building with configs: {'libraries': ['tesseract', 'lept'], 'cython_compile_time_env': {'TESSERACT_VERSION': 197632}}
  cythoning tesserocr.pyx to tesserocr.cpp …
Run Code Online (Sandbox Code Playgroud)

python-tesseract

5
推荐指数
1
解决办法
6964
查看次数

无法加载这样的文件--sqlite3/sqlite3_native(LoadError)Ruby on Rails

我已经查看了其他几个帖子并尝试了解决方案但没有成功.

问题被标记为此解决方案的副本 无法在ruby上加载此类文件 - sqlite3/sqlite3_native(LoadError) 但是给出的答案对我不起作用.我只是得到了同样的错误

我刚安装了rails,所以一切都是最新的我使用以下内容:Windows 10,ruby版本2.5.1,rails版本5.2.0

我也尝试用bundle update更新SQLite gem.

这是错误:

C:\proje>rails s

Traceback (most recent call last):

        43: from bin/rails:4:in `<main>'

        42: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activesupport-5.2.0/lib/active_support/dependencies.rb:283:in `require'

        41: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activesupport-5.2.0/lib/active_support/dependencies.rb:249:in `load_dependency'

        40: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/activesupport-5.2.0/lib/active_support/dependencies.rb:283:in `block in require'

        39: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bootsnap-1.3.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:29:in `require'

        38: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bootsnap-1.3.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:20:in `require_with_bootsnap_lfi'

        37: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bootsnap-1.3.0/lib/bootsnap/load_path_cache/loaded_features_index.rb:65:in `register'

        36: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bootsnap-1.3.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `block in require_with_bootsnap_lfi'

        35: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/bootsnap-1.3.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require'

        34: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.2.0/lib/rails/commands.rb:18:in `<top (required)>'

        33: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.2.0/lib/rails/command.rb:46:in `invoke'

        32: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/railties-5.2.0/lib/rails/command/base.rb:65:in `perform'

        31: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/thor-0.20.0/lib/thor.rb:387:in `dispatch'

        30: from C:/Ruby25-x64/lib/ruby/gems/2.5.0/gems/thor-0.20.0/lib/thor/invocation.rb:126:in `invoke_command' …
Run Code Online (Sandbox Code Playgroud)

ruby sqlite ruby-on-rails

5
推荐指数
1
解决办法
4513
查看次数

如何在heroku上修复ActionDispatch :: Cookies :: CookieOverflow错误?

我经常ActionDispatch::Cookies::CookieOverflow在我的rails应用程序中遇到heroku错误.我认为在会话中倾倒未使用的信息就像

env["airbrake.error_id"] = notify_airbrake(e)
Run Code Online (Sandbox Code Playgroud)

可能有问题.

我已经在会话中抛出了许多字符串,也许这可能是问题所在.我读了一些帖子,暗示这也可能是因为activeadmin.最后我想创建一个会话表的建议在这里

我无法弄清楚解决这个问题的最佳方法是什么? 请建议所有可能的解决方案

我的config/initializers/session_store.rb中的代码

Demo::Application.config.session_store :cookie_store, key: '_demo_appplication', :domain => :all
Run Code Online (Sandbox Code Playgroud)

通过airbrake我得到这个错误的堆栈跟踪

[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/cookies.rb:471:in []=
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/session/cookie_store.rb:110:in set_cookie
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:350:in commit_session
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:226:in context
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:220:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/cookies.rb:560:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/query_cache.rb:36:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:621:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/callbacks.rb:29:in block in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/callbacks.rb:82:in run_callbacks
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/callbacks.rb:27:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/remote_ip.rb:76:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/debug_exceptions.rb:17:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/show_exceptions.rb:30:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/rack/logger.rb:38:in call_app
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/rack/logger.rb:20:in block in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/tagged_logging.rb:68:in block in tagged
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/tagged_logging.rb:26:in tagged
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/tagged_logging.rb:68:in tagged
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/railties-4.1.1/lib/rails/rack/logger.rb:20:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/request_id.rb:21:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/methodoverride.rb:21:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/runtime.rb:17:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.1/lib/active_support/cache/strategy/local_cache_middleware.rb:26:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.1/lib/action_dispatch/middleware/static.rb:64:in call
[PROJECT_ROOT]/vendor/bundle/ruby/2.1.0/gems/heroku-deflater-0.5.3/lib/heroku-deflater/skip_binary.rb:19:in call …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails heroku session-cookies activeadmin

4
推荐指数
1
解决办法
1万
查看次数

如何在rails 4中指定asset_host?

我使用Amazon S3进行文件上传,使用Cloudfront进行静态资产服务,在我的config/environments/staging.rb中,我写道

ActionController::Base.asset_host = Proc.new { |source|
  if source.include?('/assets')
    "d1xw0c7m8has5k.cloudfront.net"
  else
    "#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
  end
}

ActionMailer::Base.asset_host = Proc.new { |source|
  if source.include?('/assets')
    "d1xw0c7m8has5k.cloudfront.net"
  else
    "#{ENV['FOG_DIRECTORY']}.s3.amazonaws.com"
  end
}
Run Code Online (Sandbox Code Playgroud)

但是在我的邮件中,通过rails应用程序发送,我看到image_tag src属性为空?即没有显示图像.这个设置有什么问题我无法识别,请帮助.

actionmailer amazon-s3 amazon-cloudfront ruby-on-rails-4 ruby-2.1

3
推荐指数
1
解决办法
5219
查看次数

调用方法'Mongol_verifyDoc'时出现异常ReferenceError:未定义匹配

我是流星的新手不知道为什么我在控制台中收到此错误.

=> Meteor server restarted                    
I20160127-14:34:59.949(5.5)? Exception while invoking method 'Mongol_verifyDoc' ReferenceError: Match is not defined
I20160127-14:34:59.949(5.5)?     at [object Object].Meteor.(anonymous function).Mongol_verifyDoc (packages/msavin_jetsetter/server/main.js:1:1)
I20160127-14:34:59.950(5.5)?     at maybeAuditArgumentChecks (livedata_server.js:1698:12)
I20160127-14:34:59.950(5.5)?     at livedata_server.js:708:19
I20160127-14:34:59.950(5.5)?     at [object Object]._.extend.withValue (packages/meteor/dynamics_nodejs.js:56:1)
I20160127-14:34:59.950(5.5)?     at livedata_server.js:706:40
I20160127-14:34:59.950(5.5)?     at [object Object]._.extend.withValue (packages/meteor/dynamics_nodejs.js:56:1)
I20160127-14:34:59.950(5.5)?     at livedata_server.js:704:46
I20160127-14:34:59.950(5.5)?     at tryCallTwo (/home/sachin/.meteor/packages/promise/.0.5.1.1550ocw++os+web.browser+web.cordova/npm/node_modules/meteor-promise/node_modules/promise/lib/core.js:45:5)
I20160127-14:34:59.950(5.5)?     at doResolve (/home/sachin/.meteor/packages/promise/.0.5.1.1550ocw++os+web.browser+web.cordova/npm/node_modules/meteor-promise/node_modules/promise/lib/core.js:171:13)
I20160127-14:34:59.950(5.5)?     at new Promise (/home/sachin/.meteor/packages/promise/.0.5.1.1550ocw++os+web.browser+web.cordova/npm/node_modules/meteor-promise/node_modules/promise/lib/core.js:65:3)
Run Code Online (Sandbox Code Playgroud)

我使用以下包裹: -

meteor-base             # Packages every Meteor app needs to have
mobile-experience       # Packages for a great mobile UX
mongo                   # The …
Run Code Online (Sandbox Code Playgroud)

javascript node.js meteor

3
推荐指数
1
解决办法
870
查看次数

如何在minitest中模拟另一个类的实例方法

我正在使用 minitest 测试 ruby​​ 应用程序

我有这样的场景:

class TestExample

   def test_method
      SomeOtherClass.new.print_message "Hello World!!!!!"
   end

end
Run Code Online (Sandbox Code Playgroud)

在这里,我想模拟 的print_message方法SomeOtherClass,并像这样尝试

mock = MiniTest::Mock.new
test_example = TestExample.new
mock.expect(SomeOtherClass.new, nil, ["Hello World!!!!!"])
test_example.test_method
mock.verify
Run Code Online (Sandbox Code Playgroud)

它不起作用,它给出了如下异常: -

MockExpectationError: expected #("Hello World!!!!!!") => [], got []

感谢您的任何建议和回答。

ruby unit-testing minitest

2
推荐指数
1
解决办法
2098
查看次数

无法使用cram_md5身份验证通过SSL上的SMTP发送电子邮件

我正在编写一个 Ruby 脚本来使用“mail”gem 发送电子邮件。

这些是我在本地计算机上的 SMTP 设置:

mailer_options:
  address: smtp.gmail.com
  port: 465
  domain: gmail.com
  user_name: example@gmail.com
  password: example_password
  authentication: :cram_md5
  enable_starttls_auto: true
  ssl: true
Run Code Online (Sandbox Code Playgroud)

当我尝试使用上述 SMTP 设置发送电子邮件时,出现以下异常:

/opt/rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/net/smtp.rb:968:in `check_auth_continue': 504 5.7.4 Unrecognized Authentication Type ka3sm12016635pbc.32 - gsmtp (Net::SMTPSyntaxError)from /opt/rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/net/smtp.rb:758:in `block in auth_cram_md5from /opt/rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/net/smtp.rb:941:in `critical'
from /opt/rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/net/smtp.rb:756:in `auth_cram_md5'
from /opt/rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/net/smtp.rb:731:in `authenticate'
from /opt/rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/net/smtp.rb:566:in `do_start'
from /opt/rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/net/smtp.rb:519:in `start'
from /opt/rtpg/vendor/bundle/ruby/2.0.0/gems/mail-2.5.4/lib/mail/network/delivery_methods/smtp.rb:112:in `deliver!'
from /opt/rtpg/vendor/bundle/ruby/2.0.0/gems/mail-2.5.4/lib/mail/message.rb:2129:in `do_delivery'
from /opt/rtpg/vendor/bundle/ruby/2.0.0/gems/mail-2.5.4/lib/mail/message.rb:234:in `deliver'
from /opt/rtpg/vendor/bundle/ruby/2.0.0/gems/mail-2.5.4/lib/mail/mail.rb:140:in `deliver'
Run Code Online (Sandbox Code Playgroud)

我尝试搜索这个错误并发现

SASL LOGIN 身份验证失败:在 Ubuntu 12.10 上使用 Postfix 和 Dovecot 的 Rails …

ruby email rubygems ruby-on-rails ruby-on-rails-3.2

2
推荐指数
1
解决办法
4592
查看次数

无法使用ruby脚本从amazon s3删除文件

我使用aws-sdk-ruby删除我的amazon s3帐户中存储在存储桶中的文件,但我无法弄清楚为什么我能够使用以下代码从S3存储桶中删除所需的文件.

这是我的代码

require 'aws-sdk-v1'
require 'aws-sdk'

ENV['AWS_ACCESS_KEY_ID'] = "XXXXXXX"
ENV["AWS_SECRET_ACCESS_KEY"] = '/ZZZZZZZZ'
ENV['AWS_REGION'] = 'us-east-1'


s3 = Aws::S3::Resource.new
bucket = s3.bucket('some-bucket')
obj = bucket.object('https://s3.amazonaws.com/some-bucket/38ac8226-fa72-4aee-8c3d-a34a1db77b91/some_image.jpg')
obj.delete
Run Code Online (Sandbox Code Playgroud)

ruby rubygems amazon-s3 amazon-web-services

2
推荐指数
1
解决办法
3607
查看次数

如何最少可能依靠石墨图

require 'statsd'

statsd = Statsd.new('localhost', 8125).tap{|sd| sd.namespace = 'account'}

1.times do
  statsd.increment 'hitcount4'
end

sleep 5

5.times do
  statsd.increment 'hitcount4'
end

sleep 10

10.times do
  statsd.increment 'hitcount4'
end
Run Code Online (Sandbox Code Playgroud)

我正在使用红宝石宝石 statsd-ruby

我运行上面的脚本它成功执行,图形出现,但我只能看到x轴上的一条线而没有(没有y轴的值),如何获取上述脚本的图形?

我想记录每个增量调用.

/opt/graphite/statsd/local.js的内容

{
  graphitePort: 2003
, graphiteHost: "127.0.0.1"
, port: 8125
, backends: [ "./backends/graphite", "./backends/repeater", "./backends/console" ]
, repeater: [ { host: '10.1.2.15', port: 8125 } ]
, graphite: { legacyNamespace: false, globalPrefix: "rtpg.testing_server_2" }
, flushInterval: 10
}
Run Code Online (Sandbox Code Playgroud)

/opt/graphite/conf/storage-schemas.conf的内容

[carbon]
pattern = ^carbon\.
retentions = 60:90d

[stats] …
Run Code Online (Sandbox Code Playgroud)

ruby graphite statsd

1
推荐指数
1
解决办法
1132
查看次数