小编Abr*_*ram的帖子

db:migrate在简单迁移时挂起

我正在使用PostgreSQL,Rails 3.1.3和Ruby 1.9.3.我正在努力使用这里db:migrate概述的.

这就是我在终端中看到的:

funkdified@funkdified-laptop:~/railsprojects/hartl$ bundle exec rake db:migrate --trace 
** Invoke db:migrate (first_time) 
** Invoke environment (first_time) 
** Execute environment 
** Invoke db:load_config (first_time) 
** Invoke rails_env (first_time) 
** Execute rails_env 
** Execute db:load_config 
** Execute db:migrate 
== AddEmailUniquenessIndex: migrating ======================================== 
-- add_index(:users, :email, {:unique=>true})
Run Code Online (Sandbox Code Playgroud)

然后代码挂起.有什么想法吗?

来自:development.log

[1m[36m (0.1ms)[0m [1mSHOW search_path[0m 
[1m[35m (0.5ms)[0m SELECT "schema_migrations"."version" FROM "schema_migrations"
Migrating to CreateUsers (20120124022843) 
Migrating to AddEmailUniquenessIndex (20120124093922) 
[1m[36m (0.1ms)[0m [1mBEGIN[0m 
[1m[35m (3.6ms)[0m SELECT distinct i.relname, d.indisunique, d.indkey, t.oid …
Run Code Online (Sandbox Code Playgroud)

ruby dbmigrate ruby-on-rails-3

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

git add --ignore-removal的快捷方式?

git add .在提交更改之前,我已经打字多年了.根据我的理解(从下面的信息中),现代的等价物将git add --ignore-removal <pathspec>更加冗长.有没有办法在即将发布的git 2.0版本中恢复旧的行为,或者至少在当前版本中将此消息静音?

$ git add .
warning: You ran 'git add' with neither '-A (--all)' or '--ignore-removal',
whose behaviour will change in Git 2.0 with respect to paths you removed.
Paths like 'log/sunspot-solr-development.log.lck' that are
removed from your working tree are ignored with this version of Git.

* 'git add --ignore-removal <pathspec>', which is the current default,
  ignores paths you removed from your working tree.

* 'git add --all …
Run Code Online (Sandbox Code Playgroud)

git

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

Git Interactive Rebase - 提交顺序以及选择/压缩的顺序

假设我有以下内容:

pick b0bc3ea Issue #1431 - Part 1
pick 606e9bc Issue #1431 - Part 2
Run Code Online (Sandbox Code Playgroud)

第2部分显然是最近的提交.我压扁它的方式有关系吗?我是否需要将年龄越大,年龄越大,年龄越大,或者重要吗?

谢谢!

git

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

ActiveJob deliver_later不发送

我有以下方法:

UserMailer.comment_alert(@comment, user, type).deliver_later
Run Code Online (Sandbox Code Playgroud)

哪个奇怪地出现deliver_now在rails日志中的param :

[ActiveJob] Enqueued ActionMailer::DeliveryJob (Job ID: 5bdf9ed1-53d5-42aa-acb2-7ce54ab284e1) to Sidekiq(mailers) with arguments: "UserMailer", "comment_alert", "deliver_now", gid://xxx/Comment/153, gid://xxx/User/26, "Comment"
Run Code Online (Sandbox Code Playgroud)

工作永远不会进行,我在Sidekiq日志中看不到任何内容.也没有送过邮件.我尝试重启sidekiq,rails和redis,甚至清除redis db.有趣的是改变了.deliver_now作品,但这似乎没有触及sidekiq或创建一个Enqueued ActionMailer::DeliveryJob

在我的application.rb中:

config.active_job.queue_adapter = :sidekiq
Run Code Online (Sandbox Code Playgroud)

我使用rails 4.2.6 with activejob 4.2.6

ruby-on-rails rails-activejob

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

ActiveRecord与ID数组连接

以下命令在拉出具有特定功能的所有样式时非常有用:

Style.joins(:style_features).where('style_features.feature_id= ?', 1)
Run Code Online (Sandbox Code Playgroud)

有可能做同样的事情,但对于一系列功能?如:

Style.joins(:style_features).where('style_features.feature_id= ?', [1, 2, 3])
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails

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

Google地图:在标记点击侦听器中获取点击或标记(x,y)像素坐标

我想在标记点击上显示地图标记上的完全自定义信息窗口.我已经成功实现了这个答案,以获得一个div来显示地图画布点击...但我无法在标记点击上复制它.

是否可以在标记点击功能中获取标记像素位置,并抑制正常信息窗口显示所需的自定义信息窗口?

我试过这个:

      google.maps.event.addListener(marker, 'click', function(args) {
        var x=args.pixel.x+$('#map').offset().left; //we clicked here
        var y=args.pixel.y;

        info.style.left=x+'px';
        info.style.top=y+'px';
        info.style.display='block';
      });
Run Code Online (Sandbox Code Playgroud)

但在控制台中,我看到:

Uncaught TypeError: Cannot read property 'x' of undefined
Run Code Online (Sandbox Code Playgroud)

javascript jquery google-maps google-maps-api-3

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

什么是设计authenticate_user的代码!生成后:用户

我认识到,authenticate_user!没有明确定义在宝石的文件,但我想知道的典型应用(命名型号认证User),将方法是什么样子.我需要知道,以便我可以稍微修改它.

ruby-on-rails devise

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

查找一个属性大于另一个属性的记录

我想找到具有更高的任何产品ip_solidip_liquid

我正在尝试执行以下操作:

Product.where("ip_solid > ?", :ip_liquid).count
Run Code Online (Sandbox Code Playgroud)

但是,似乎:ip_liquid没有从每个对象中读出,并且可能评估为 0 或 nil。这样的事情甚至可能吗?

ruby ruby-on-rails

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

SSH密钥不会永久添加到我的钥匙串

我尝试过以下方法:

ssh-add -K ~/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)

这似乎一直有效,直到我结束我的终端会话,但随后我再次通过新会话提示我的密码短语.

以下是我在运行上述命令后看到的内容:

Identity added: /Users/xxx/.ssh/id_rsa (/Users/xxx/.ssh/id_rsa)
Run Code Online (Sandbox Code Playgroud)

我在iTerm2 Build 3.0.13zsh: stable 5.3.1上运行macOS Sierra 10.12.2

ssh macos-sierra

5
推荐指数
2
解决办法
1686
查看次数

太阳黑子Solr全文搜索和will_paginate

以下查询的工作方式类似于魅力:

@styles = Style.search { fulltext params[:q] }
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是分页.这是与分页相同的查询:

@styles = Style.search { fulltext params[:q]; paginate :page => params[:page], :per_page => params[:page_limit] }
Run Code Online (Sandbox Code Playgroud)

我有11 Style条记录.

如果我有:page => 1,:per_page => 10当我搜索第11条记录时,我会返回一个空数组@styles.results

如果我设置:page=>2并执行相同的搜索,我将获得第11个样式记录.

[11] pry(#<StylesController>)> params[:page]=2
=> 2
[12] pry(#<StylesController>)> x=Style.search {fulltext params[:q]; paginate :page => params[:page], :per_page => params[:page_limit] }
=> <Sunspot::Search:{:fq=>["type:Style"], :q=>"hel", :fl=>"* score", :qf=>"name_textp full_name_textp", :defType=>"dismax", :start=>10, :rows=>10}>
[13] pry(#<StylesController>)> x.results
=> [#<Style id: 15...>]
Run Code Online (Sandbox Code Playgroud)

我认为重点是对搜索结果进行分页,而不是整个实际记录

这里发生了什么,我该如何解决?

编辑

好吧,让我试着用另一种方式解释.假设我有这六个记录:

1 => …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails sunspot will-paginate

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