Rails Ошибка запроса данных из Postgres на Heroku - PullRequest
0 голосов
/ 12 апреля 2019

Я только что развернул свое первое приложение на Heroku с Postgres и получаю сообщение об ошибке при запросе данных к моделям.Он работает правильно с локальной базой данных MySQL, когда приложение запрашивает это через контроллер:

SELECT "locations".* 
FROM "locations" 
WHERE (id LIKE '%1%' OR user_id LIKE '%1%')):

 18:   </thead>
 19: 
 20:   <tbody>
 21:     <% @locations.each do |location| %>
 22:       <tr>
 23:         <td><%= location.id %></td>
 24:         <td><%= location.user.name %></td>
 FATAL -- : [e8968d66-5740-4005-9236-fd3e4cc61542] app/views/locations/index.html.erb:21:in `_app_views_locations_index_html_erb___341067609742207438_69941629868780'

Это метод, который выполняет поиск:

     def index
    if  params[:search].present?
      @search = params[:search]
      @locations = Location.where('id LIKE ? OR user_id LIKE ?', "%#{@search}%", "%#{@search}%") 
    else 
       @locations = Location.all
    end
  end

1 Ответ

1 голос
/ 12 апреля 2019

Вот некоторая путаница.Вы упомянули Postgres on Heroku в заголовке, а MySql в описании.

Я предположил, что вы используете Postgres для написания кода ниже.

В случае, если вы используете MySql, используйтеLIKE в данном коде.

@locations = Location.where("id ILIKE :search OR user_id ILIKE :search", search: "%#{@search}%")

Дайте мне знать, если вы найдете это полезным !!!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...