: порядок на Rails 2.3.9 вообще не работает, так как я установил Bundler? - PullRequest
1 голос
/ 04 августа 2011

решено, см. Ниже.

Мое приложение на Heroku, и недавно они просмотрели файл ".gems" , чтобы использовать "Gemfile" с Bundler.

Примечание: Я вернулся к старой системе драгоценных камней, и проблема все еще существует. Та же проблема локально и сейчас.

Я внес изменения, и все, казалось, работало нормально, пока не заметил : заказ больше не работал.

В консоли

Users.find(:all)
  User Load (13.3ms)   SELECT * FROM `users` 
  User Columns (2.2ms)   SHOW FIELDS FROM `users`

А потом, если я сделаю

Users.find(:all, :order => "'created_at' ASC")
  User Load (13.3ms)   SELECT * FROM `users` 

И выдаст те же результаты

Named_scope и все, что используется: порядок больше не работает. Мне пришлось жестко закодировать SQL-запрос, используя find_by_sql, чтобы временно исправить это.

Любая помощь будет высоко оценена ...

Спасибо.

Обновлен:

require 'rubygems'
source 'http://rubygems.org'
#source 'http://gemcutter.org'
#source 'http://gems.github.com'

gem 'rails', '2.3.9'
gem "bundler", "~> 1.0.15"
gem "builder", "3.0.0"
gem 'delayed_job', '2.0.7'
gem "hashie", "0.4.0"
gem "httparty", "0.6.1"
#gem "httparty", "0.5.0"
gem 'dalli' , '1.0.2'
gem 'calendar_date_select' , '1.16.1'
gem 'ckeditor' , '3.4.3'
gem 'fastercsv'
gem 'geokit' , '1.5.0'
gem 'hpricot' , '0.8.2'
gem 'will_paginate' , '2.3.14'
gem 'feed-normalizer' , '1.5.2'
gem 'memcached-northscale' , '0.19.5.3'
gem 'mysql' , '2.8.1'
gem 'less' , '1.2.21'
gem 'aws-s3'
gem 'paperclip'

gem 'pdfkit' , '0.4.6'
gem 'icalendar' , '1.1.5'
gem 'sitemap_generator'
gem 'taps' , '0.3.23'
gem 'geo_ip' , '0.3.1'
gem 'i18n'

Дополнительные примеры

User.find(:all,{ :order => "CREATED_AT DESC",:test => ""})
ArgumentError: Unknown key(s): test

User.find(:all,{:order => "CREATED_AT DESC"})
User Load (13.3ms)   SELECT * FROM `users` (no order)

User.find(:all,{ :order => "CREATED_AT DESC",:conditions => "SCORE > 10000"})
User Load (13.3ms)   SELECT * FROM `users` WHERE `score` > 10000 (no order again) 

Подробнее

  • Переход на 2.3.8 не помог
  • : условия работают, но нет: смещение
  • Мои другие локальные приложения работают нормально

1 Ответ

1 голос
/ 04 августа 2011

Хорошо, я обнаружил проблему после 4 часов охоты.

Оказывается, я не удалял поставщиков после установки Bundler. Один из них был https://github.com/xymbol/active_record_random и испортил Active Record.

Спасибо всем, особенно @mu слишком короткий

...