小编amd*_*amd的帖子

Postgres LIKE,列值为子字符串

我正在尝试编写一个WHERE语句,该语句将匹配列值是另一个字符串的子字符串的行.

例如,我可能有event一个name字段为的记录Edward Sharpe.我想做点什么:

SELECT * FROM events WHERE(name LIKE 'Edward Sharpe and the Magnetic Zeroes');
Run Code Online (Sandbox Code Playgroud)

这不起作用.我还有各种各样的排列:

SELECT * FROM events WHERE('%' || name || '%' LIKE 'Edward Sharpe and the Magnetic Zeroes');
Run Code Online (Sandbox Code Playgroud)

哪个也行不通.

sql postgresql postgresql-9.2

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

ActiveRecord:在带有eager-loaded关联的`where`子句之后不能使用`pluck`

我有一个应用程序,有许多Post模型,每个模型都是belongs_to一个User模型.发布这些帖子时,PublishedPost会创建belongs_to相关Post模型的模型.

我正在尝试构建一个ActiveRecord查询来查找与用户名匹配的已发布帖子,然后获取这些已发布帖子的ID,但是当我尝试pluck在加载我的关联和搜索之后尝试使用该方法时出现错误他们用这个where方法.

这是(我的控制器的一部分):

class PublishedPostsController < ApplicationController

  def index
    ar_query = PublishedPost.order("published_posts.created_at DESC")

      if params[:searchQuery].present?
        search_query = params[:searchQuery]
        ar_query = ar_query.includes(:post => :user)
                           .where("users.name like ?", "%#{search_query}%")
      end

    @found_ids = ar_query.pluck(:id)

  ...

  end

end
Run Code Online (Sandbox Code Playgroud)

当pluck调用该方法时,我得到了这个:

ActiveRecord::StatementInvalid: Mysql2::Error: Unknown column 'users.name' in 'where clause': SELECT id FROM `published_posts`  WHERE (users.name like '%Andrew%') ORDER BY published_posts.created_at DESC
Run Code Online (Sandbox Code Playgroud)

我可以得到我正在寻找的结果

@found_ids = ar_query.select(:id).map{|r| r.id}
Run Code Online (Sandbox Code Playgroud)

但我宁愿使用,pluck …

sql activerecord arel ruby-on-rails-3

10
推荐指数
2
解决办法
5489
查看次数

Git错误:无法提交配置文件

我正在尝试向现有项目添加一个新的远程存储库(GitHub),并且我收到一个我以前从未见过的错误,并且不明白:

$ git remote add github git@github.com:me/myrepo.git   
error: could not commit config file .git/config
Run Code Online (Sandbox Code Playgroud)

什么?为什么我要提交git配置文件?我该如何让这种停止发生?

我在Mac上,安装了大部分工具.我想这是我第一次尝试在这台机器上添加遥控器到一个回购.

git macos

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