小编Jon*_*han的帖子

heroku还有其他搜索选项吗?

我即将推出一个测试网站,而heroku看起来是个不错的选择.让我失望的唯一想法是,Websolr附加组件的唯一搜索选项是$ 20/mth.

我确信Websolr很棒,但是在这个项目的早期阶段,我宁愿不去点那笔费用.

有没有任何免费搜索选项可以与heroku的Blossom(免费)计划结合使用.

我觉得这样的小气鬼!

hosting full-text-search ruby-on-rails heroku pg-search

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

红宝石规则引擎

我觉得我要在这里重新发明轮子,所以在我这样做之前......

我需要处理大量数据,处理数据的"规则"会随着时间的推移而发展,所以我认为实现一个简单的规则引擎是有序的.

注意我不是在寻找一个自然语言解析器,我希望所有的规则都是ruby procs.

我可以想象语法看起来像:

engine = SimpleRulesEngine.new

rule = engine.add_rule(priority: 10) do |row|
  row.name != 'George'
end

rule.action do |row|
  puts "Yikes, name is not George!, it was #{row.name}"
  row.update_attribute :name, 'George'
end

engine.process collection
Run Code Online (Sandbox Code Playgroud)

我想知道是否有任何现有的模式或宝石可以帮助解决这个问题.看起来最接近的是规则,但似乎没有积极维护,并且似乎对我的问题的解决方案太复杂.

谢谢!


请注意,这是一个类似的问题:Ruby和Rules Engines,但不同之处在于,我不关心自然语言处理和规则存储.

ruby dsl ruby-on-rails

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

有关carrierwave和mongoid的回调问题

我在rails 3应用程序上使用了carrierwave和mongoid,并且遇到了after_save回调问题.考虑以下

class Video
  include Mongoid::Document

  field :name  

  mount_uploader :file, VideoUploader

  after_create :enqueue_for_encoding

  protected

  def enqueue_for_encoding
     // point your encoding service to where it expects the permanent file to reside
     // in my case on s3 
  end

end
Run Code Online (Sandbox Code Playgroud)

我的问题是在我的enqueue_for_encoding方法中,file.url指向本地tmp目录而不是s3目录.

enqueue_for_encoding当file.url指向s3时,如何调用我的方法?

谢谢!

乔纳森

ruby-on-rails mongoid carrierwave

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

如何捕获heroku worker中的Memory Quota异常

我正在使用delayed_job来处理heroku的后台作业.偶尔我会超越我的内存分配,我会得到这样的东西:

2011-11-16T02:41:25 + 00:00的Heroku [worker.1]:错误R14(存储器配额超标)2011-11-16T02:41:45 + 00:00的Heroku [worker.1]:流程运行MEM = 542M(106.0%)

我想优雅地处理这个问题.有没有办法找出我何时要超越我的记忆限制?

机架超时这样的东西会很棒

谢谢!

ruby exception-handling ruby-on-rails heroku

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

如何在角度拦截器中预先形成重定向

大家好我对角度很新,我对拦截器中处理重定向的最佳方法有疑问.

我的应用程序中有某些页面,如果我选择了一个帐户,我应该只能访问这些页面.因此,如果未选择帐户,我希望用户登录的路线选择帐户.

以下是我失败的尝试:

    // within config

    $httpProvider.interceptors.push(function($q, $injector){
        return {
            'request': function(config) {
                var state = $injector.get('$state');

                if(state.is('user.list')) {
                    var accountService = $injector.get('AccountService');
                    if(!accountService.accountSelected()){

                        // cancel the current request
                        var defer = $q.defer();
                        defer.resolve();
                        config.timeout = defer.promise;

                        state.go('account.select');

                    }
                }

                return config;
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

这给我带来了无限循环.出于某种原因,当state.go发生火灾 - 并且它被重新拦截时,状态仍然是"user.list"

注意:我使用的是ui-router,角度为1.2.6

另一个注意事项:我想把它放在另一个地方是一个state.resolve块.

谢谢你的帮助!

angularjs angular-ui-router

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

如果查询使用 ApolloClient 命中缓存,如何记录?

使用 Apollo 客户端的查询组件考虑以下内容:

  <Query {...props} query={NOTEBOOK_QUERY} variables={{ id: props.notebookId }} >
    {result => props.children(result)}
  </Query>
Run Code Online (Sandbox Code Playgroud)

第一次运行时,我希望它是一个网络调用,第二次我希望它命中缓存。

是否有可以插入的工具来打印缓存是否命中或未命中,以及使用了什么密钥?

谢谢!!

apollo graphql react-apollo

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

是否可以使用jquery返回"突出显示"(如Firebug)css选择器或dom id?

单击"使用FireBug单击要检查的页面上的元素"箭头时,它会在目标元素周围放置一个蓝色边框,并返回DOM Id.

我正在构建一个应用程序,该功能将是很棒的添加.在单击将DOM Id或CSS选择器返回到应用程序时,能够将鼠标悬停在元素上并突出显示目标.

有没有一个jquery插件可以做到这一点?其他一些聪明的方式?

谢谢!,

乔纳森

ajax jquery firebug

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

heroku/memcache和dalli的奇怪缓存问题

考虑以下.从我的heroku控制台:

>> Rails.cache.stats
=> {"server_id"=>{"evictions"=>"0", "curr_items"=>"2064", "total_items"=>"18793", "bytes"=>"7674501", ...
>> Rails.cache.clear
=> [true]
>> Rails.cache.stats
=> {"server_id"=>{"evictions"=>"0", "curr_items"=>"2064", "total_items"=>"18793", "bytes"=>"7674501",
Run Code Online (Sandbox Code Playgroud)

超级怪异 - 如何清除我的缓存!!


类似问题?:https://stackoverflow.com/q/7122513/192791

memcached ruby-on-rails heroku

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

python | heroku | 如何通过ssh访问包

嗨heroku蟒蛇人,

我希望我的heroku应用程序访问我的github帐户中的共享私有库.

所以我想有一个看起来像这样的requirements.txt文件......

# requirements.txt
requests==1.2.2
-e git+ssh://git@github.com/jtushman/dict_digger.git#egg=dict_digger
Run Code Online (Sandbox Code Playgroud)

我希望它使用我上传的ssh密钥heroku keys:add 或具有一些机制来从heroku cli获取私钥.

现在我收到以下错误(我猜这是预期的):

主机密钥验证失败.

如果我这样做的话(按@ kenneth_reitz的/sf/answers/639566581/):

-e git+https://username:password@github.com/jtushman/dict_digger.git#egg=dict_digger
Run Code Online (Sandbox Code Playgroud)

但是在我的requirements.txt文件中放置凭据真的不可行

有没有人想出一个很好的解决方案呢?


我还在这里发布了一个关于heroku python buildpack项目的问题

python ssh pip heroku

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

GraphQL:一个大查询与大量小查询

我知道这个问题由来已久——而且这并不是什么灵丹妙药。但我认为可能有一个固定的模式,我不想发明轮子。

考虑以下两个架构选项:

方法1)我原来的实现

type Query {
  note(id: ID!): Note
  notes(input: NotesQueryInput): [Note!]!
}
Run Code Online (Sandbox Code Playgroud)

方法2)我目前的实验方法

type DatedId {
  date: DateTime!
  id: ID!
}

type Query {
  note(id: ID!): Note
  notes(input: NotesQueryInput): [DatedId!]!
}
Run Code Online (Sandbox Code Playgroud)

差异是:

使用方法 1) 注释查询将返回可能较大的注释对象的列表

使用方法 2),notes 查询将返回更轻的有效负载,但随后需要执行n 个额外的查询

所以我的问题是带有内存缓存的Apollo 客户端/服务器堆栈,这是最好的方法。实现具有可扩展服务器的响应式客户端。


笔记
  • 使用方法 1——我的 500mb dyno(heroku 服务器)内存不足。

  • 我希望无论采用哪种方法,我都会使用连接/边缘模式实现分页

  • graphql 服务器主要是为我自己的前端提供服务。

node.js apollo graphql apollo-server apollo-client

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