小编den*_*icz的帖子

Access-Control-Allow-Origin问题

我有两个本地rails应用程序,我想彼此交谈以进行测试......一个在端口3000上运行,另一个在9292上运行.

但是,当我从localhost:3000发出一个ajax请求到localhost:9292时,我一直遇到这个问题:

Origin http://localhost:3000 is not allowed by Access-Control-Allow-Origin.

有关如何解决此问题的任何想法?

我正在使用一个简单的Sinatra应用程序来接收(仅用于测试目的)JSON请求.下面是我如何让两个rails应用程序在localhost上相互通信(一个在端口3000上,另一个在端口9292上)
工作代码

before do
  headers['Access-Control-Allow-Origin'] = '*'
  headers['Access-Control-Allow-Methods'] = 'POST, GET, OPTIONS'
  headers['Access-Control-Allow-Headers'] = 'X-Requested-With, X-Prototype-Version, X-CSRF-Token'
end

after do
  headers['Access-Control-Allow-Origin'] = 'http://localhost:3000/'
end
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!

jquery ruby-on-rails-3

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

Rails 3 Encoding :: CompatibilityError

我正在开发一个通过ajax提交法语翻译的rails应用程序,由于某种原因,我在日志中不断收到以下错误:

Encoding::CompatibilityError incompatible character encodings: UTF-8 and ASCII-8BIT

有谁知道如何解决这一问题?

FIX:这适用于WEBrick服务器

放置# encode: UTF-8在您希望使用不同字符的每个文件的顶部

我无法让这个在带有Thin的rails服务器上工作...其他人遇到这个?

ruby-on-rails utf-8 thin

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

Ruby在数组中找到下一个

反正有没有找到Ruby数组中的下一个项目?

码:

# Find ALL languages
if !debug
  lang = Language.all
else
  lang = Language.where("id = ? OR id = ?", 22, 32)
end

# Get all elements
elements = Element.where("human_readable IS NOT NULL")

lang.each do |l|
  code = l.code.downcase
  if File.exists?(file_path + code + ".yml")
    File.delete(file_path + code + ".yml")
  end

  t1 = Time.now

  info = {}
  elements.each do |el|
    unless l.id == 1
      et = el.element_translations.where("language_id = ? AND complete = ?", l.id, true)
    else
      et = el.element_translations.where("language_id …
Run Code Online (Sandbox Code Playgroud)

ruby arrays

9
推荐指数
3
解决办法
3万
查看次数

Rails 3 Overriding Devise Mailer

我正在开发一个与Mandrill(MailChimp的交易电子邮件服务)紧密集成的应用程序,我正在尝试覆盖Devise Mailer,但由于某种原因,当我向Mandrill发送API调用时,我收到了他们的电子邮件,但是Devise也是给我发一封电子邮件(这是空白的).

这是我的 DeviseMailer

class MyDeviseMailer < Devise::Mailer
  def reset_password_instructions(record)
    mandrill = Mandrill::API.new("#{MandrillConfig.api_key}")
    mandrill.messages 'send-template',
            { 
              :template_name => 'Forgot Password', 
              :template_content => "",
              :message => {
                :subject => "Forgot Password",
                :from_email => "test@test123.com",
                :from_name => "Company Support",
                :to => [
                  {
                    :email => record.email
                  }
                ],
                :global_merge_vars => [
                  {
                    :name => "FIRST_NAME",
                    :content => record.first_name
                  },
                  {
                    :name => "FORGOT_PASSWORD_URL",
                    :content => "<a href='#{edit_user_password_url(:reset_password_token => record.reset_password_token)}'>Change My Password</a>"
                  }
                ]
              }
            }
      #We need to call super because Devise …
Run Code Online (Sandbox Code Playgroud)

actionmailer devise mailchimp ruby-on-rails-3

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

无需安装 Confluent Platform 即可使用 Confluent Hub

我正在使用这些安装说明获取融合中心客户端https://docs.confluent.io/current/connect/managing/confluent-hub/client.html

但是,当我开始安装 kafka-connect-elasticsearch 连接器时

confluent-hub install confluentinc/kafka-connect-elasticsearch:latest

我继续收到此错误消息:

Unable to detect Confluent Platform installation. Specify --component-dir and --worker-configs explicitly.

Error: Invalid options or arguments
Run Code Online (Sandbox Code Playgroud)

我在 Mac 上通过 Homebrew 安装了 ElasticSearch 和 Kafka

apache-kafka apache-kafka-connect confluent-platform

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

jQuery:实时计算单词

我使用以下jQuery功能实时计算单词:

$("input[type='text']:not(:disabled)").each(function(){
            var input = '#' + this.id;
            word_count(input);

            $(this).keyup(function(){
                word_count(input);
            })

        });

var word_count = function(field) {
        var number = 0;
        var original_count = parseInt($('#finalcount').val());
        var matches = $(field).val().match(/\b/g);
        if(matches) {
            number = matches.length/2;
        }
        $('#finalcount').val(original_count + number)
    }
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,当我开始在输入字段中输入时,计数会立即增加2,即使在空格和我的删除键上也是如此.有什么想法会发生这种情况吗?

我正在学习本教程:http://www.electrictoolbox.com/jquery-count-words-textarea-input/

输入: <input class="widest" id="page_browser_title" name="page[browser_title]" size="30" type="text" value="">

显示输入: <input class="widest" disabled="disabled" id="finalcount" name="page[word_count]" size="30" type="text" value="662">

javascript jquery

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

Ruby/Rails使用gsub和数组

我有一个字符串,我正在尝试使用Ruby中的gsub方法.问题是我有一个动态的字符串数组,我需要迭代搜索原始文本并替换.

例如,如果我有以下原始字符串(这是我正在使用的一些示例文本,并希望将其全部工作)并且有一系列我想要搜索和替换的项目.

我在这里先向您的帮助表示感谢!

ruby ruby-on-rails gsub

7
推荐指数
2
解决办法
2万
查看次数

Ruby基于key => value从数组中删除重复项

我有一系列音乐曲目,在这个阵列中,由于在多张专辑中发行,同一首歌可以多次显示.我试图从数组中删除它们,以便只在列表中显示真正的唯一.

哈希看起来像这样:

"tracks" => [
    [0] {
        "id" => 1,
        "Title" => "Intergalactic",
        "ArtistName" => "Beastie Boys"
    },
    [1] {
        "id" => 2,
        "Title" => "Intergalactic",
        "ArtistName" => "Beastie Boys"
    }
]
Run Code Online (Sandbox Code Playgroud)

我需要一种方法来删除基于Title密钥的重复项.无论如何这样做?

ruby array-unique

7
推荐指数
2
解决办法
4300
查看次数

Twitter Bootstrap Popovers无法正常工作

这是我的HTML:

<div id="disclaimer">After 30 Days you'll have the option to keep your account for $15 per month -no contract required-or revert to a single page free account.*</div>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

$('#disclaimer').popover({
  trigger: 'hover',
  html: true,
  placement: 'right',
  content: 'hello world'
});
Run Code Online (Sandbox Code Playgroud)

当我将鼠标悬停在元素上时,没有任何反应..没有JavaScript错误或任何东西,不确定是什么错误

popover twitter-bootstrap

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

Rails添加一个来增加SQL值

我试图在数据库中添加一个已增加的字段,但我收到以下错误:NoMethodError (undefined method+'表示错误:FalseClass):

码:

med = Media.find(params[:media_id])
med.update_attributes({:screener_viewed => med.screener_viewed + 1})
Run Code Online (Sandbox Code Playgroud)

我只是想添加1screener_viewed的当前值,但无法让它工作.

工作守则:

Media.increment_counter(:screener_viewed, params[:media_id])
Run Code Online (Sandbox Code Playgroud)

activerecord ruby-on-rails

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