aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* AR::Integration must be included after AM::ConversionJohn Firebaugh2012-07-172-1/+7
| | | | | | | Integration's definition of #to_param must override Conversion's. Otherwise, there is a regression from 3.1 in the behavior of a non-persisted AR::Base instance which nevertheless has an id.
* Add support for optional root segments containing slashesAndrew White2012-07-172-1/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optional segments with a root scope need to have the leading slash outside of the parentheses, otherwise the generated url will be empty. However if the route has non-optional elements then the leading slash needs to remain inside the parentheses otherwise the generated url will have two leading slashes, e.g: Blog::Application.routes.draw do get '/(:category)', :to => 'posts#index', :as => :root get '/(:category)/author/:name', :to => 'posts#author', :as => :author end $ rake routes root GET /(:category)(.:format) posts#index author GET (/:category)/author/:name(.:format) posts#author This change adds support for optional segments that contain a slash, allowing support for urls like /page/2 for the root path, e.g: Blog::Application.routes.draw do get '/(page/:page)', :to => 'posts#index', :as => :root end $ rake routes root GET /(page/:page)(.:format) posts#index Fixes #7073
* Merge pull request #7076 from kennyj/fix_class_evalAaron Patterson2012-07-175-6/+6
|\ | | | | Fix class_eval without __FILE__ and __LINE__.
| * Fix class_eval without __FILE__ and __LINE__.kennyj2012-07-185-6/+6
| |
* | Merge pull request #7072 from beerlington/fix_validations_with_scopeJon Leighton2012-07-172-1/+17
|\ \ | |/ |/| Use database value for uniqueness validation scope
| * Fixes "Cannot visit ..." with validates_uniqueness_ofbeerlington2012-07-172-1/+17
|/ | | | | | Fixes issue with overrding ActiveRecord reader methods with a composed object and using that attribute as the scope of a validates_uniqueness_of validation.
* Merge pull request #7006 from jaredbeck/issue_7005_explain_asset_debugPiotr Sarnacki2012-07-161-1/+1
|\ | | | | A more informative comment for config.asset.debug
| * A more informative comment for config.asset.debugJared Beck2012-07-161-1/+1
| |
* | Merge pull request #7066 from wkang/masterRafael Mendonça França2012-07-161-1/+1
|\ \ | | | | | | Fix activerecord model to_ary method comment 'see also' link
| * | Fix activerecord model to_ary method comment 'see also' linkKang Wen2012-07-161-1/+1
|/ /
* | Merge branch 'master' of github.com:lifo/docrailsVijay Dev2012-07-1511-38/+218
|\ \
| * | session_id column is string in defaultkennyj2012-07-151-1/+1
| | |
| * | add note about requiring gem dependencies before initialization [ci skip]Francesco Rodriguez2012-07-131-6/+28
| | |
| * | Added note about feature requests and rails-core list.Steve Klabnik2012-07-131-0/+2
| | |
| * | Updated with_routing example to 3.x syntax [ci skip]Wojciech Wnętrzak2012-07-131-7/+4
| | |
| * | Change Assertion language to Expected/Actual from obj1/obj2Scott Stewart2012-07-121-5/+5
| | |
| * | Fixes typo in CommentsController#create example Andy Lindeman2012-07-111-1/+1
| | | | | | | | | * comments.build will not actually persist the comment
| * | Fix typoChun-wei Kuo2012-07-111-1/+1
| | |
| * | [getting started] update a code listingSimon Hengel2012-07-101-0/+1
| | |
| * | use 'use_zone' method in example, instead of reimplementing itJakub Kuźma2012-07-101-5/+5
| | |
| * | Add info note about sass/coffeescript use in engine assets to guideMarten Veldthuis2012-07-091-0/+2
| | |
| * | Fixed second assert_match - previous one didn't make any sense (if the first ↵Jakub Kuźma2012-07-091-1/+1
| | | | | | | | | | | | passed, the second passed as well)
| * | It's better to pass strings to assert_match - it converts them to regular ↵Jakub Kuźma2012-07-091-2/+2
| | | | | | | | | | | | expressions, escaping special chars like '.'. It seems email.encoded contains some unexpected line breaks (due to encoding), it's better to assert_match email.body.to_s.
| * | Revert "Select missing formbuilder typo."Dan Patrick2012-07-081-2/+2
| | | | | | | | | | | | This reverts commit bf97795e7327e15774666d2197f1c0b8ada57a84.
| * | Select missing formbuilder typo.Dan Patrick2012-07-081-2/+2
| | |
| * | Document building complex forms using accepts_nested_attributes_forFrederick Cheung2012-07-081-8/+127
| | |
| * | Add docs for having, lock and readonlyOscar Del Ben2012-07-071-0/+12
| | |
| * | Add doc for joins and improve includes docOscar Del Ben2012-07-071-2/+17
| | |
| * | Add docs for eager_laod and preloadOscar Del Ben2012-07-071-0/+10
| | |
* | | adds a missing require [fixes #6896]Xavier Noria2012-07-152-1/+1
| | | | | | | | | | | | | | | This file uses Time.zone, which is defined in active_support/core_ext/time/zones.rb.
* | | Merge pull request #7057 from kennyj/fix_sql_bypass_problemRafael Mendonça França2012-07-142-1/+15
|\ \ \ | | | | | | | | Fix SqlBypass.data_column problem.
| * | | Fix SqlBypass.data_column= problem. SqlBypass.find_by_session_id method ↵kennyj2012-07-152-1/+15
| | | | | | | | | | | | | | | | didn't use this assignment.
* | | | Merge pull request #7056 from kennyj/avoid_twice_callRafael Mendonça França2012-07-141-6/+8
|\| | | | | | | | | | | Avoid to call send(store_attribute) twice.
| * | | Avoid to call send(store_attribute) twice.kennyj2012-07-151-6/+8
|/ / /
* | | Merge pull request #7053 from pferdefleisch/activesupport-timely-requiresXavier Noria2012-07-143-0/+14
|\ \ \ | | | | | | | | Added time related req files to AS core_ext #6896
| * | | Added time related req files to AS core_ext #6896Aaron Cruz2012-07-143-0/+14
|/ / / | | | | | | | | | | | | | | | This way you can `require 'active_record/core_ext/time'` for example I see these libs are available through `active_record/time` but not individually
* | | teaching the mysql adapter how to typecast strings returned from the databaseAaron Patterson2012-07-132-4/+134
| | |
* | | fixing tests to deal with data differences between prepared statements and ↵Aaron Patterson2012-07-133-3/+8
| | | | | | | | | | | | | | | | | | | | | non-prepared statements Conflicts: activerecord/test/cases/query_cache_test.rb
* | | Fixing texts; down to three failing tests.Jeremy Cole2012-07-132-15/+24
| | | | | | | | | | | | | | | Conflicts: activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
* | | Only use prepared statements when bind variables are presentJeremy Cole2012-07-131-34/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prepared statements (prepare/execute/close) were being used unnecessarily when no bind variables were present, and disabling prepared statement using prepared_statements:false was principally broken. While bind variables were correctly substituted with prepared_statements:false, the prepared statement interface was still used, costing an extra two round trips per query. In addition to making this behavioral change, I also cleaned up the internals of exec_stmt and exec_without_stmt so that they behave the same (calling log and constructing the ActiveRecord::Result in the same way). Moving the check for binds.empty? to exec_query also will mean that several code paths explicitly calling exec_without_stmt could be cleaned up to once again call exec_query instead. I have also left the check for binds.empty? in exec_stmt, since it is not a private method and could be called directly with an empty binds array. For the sake of clarity in this patch, I have not made those changes. = The previous behavior = When issuing a Foo.find(1) with prepared_statements:true, the bind variable is present in the prepared query, and execute shows a value passed: Connect root@localhost on rails_test Query SET SQL_AUTO_IS_NULL=0 Statistics Query SHOW FULL FIELDS FROM `foos` Query SHOW TABLES LIKE 'foos' Query SHOW CREATE TABLE `foos` Prepare SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = ? LIMIT 1 Execute SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1 Close stmt Quit When issuing a Foo.find(1) with prepared_statements:false, the bind variable has already been removed and substituted with the value, but the prepared statement interface is used anyway: Connect root@localhost on rails_test Query SET SQL_AUTO_IS_NULL=0 Statistics Query SHOW FULL FIELDS FROM `foos` Query SHOW TABLES LIKE 'foos' Query SHOW CREATE TABLE `foos` Prepare SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1 Execute SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1 Close stmt Quit = With this patch applied = When issuing a Foo.find(1) with prepared_statements:true, the bind variable is present in the prepared query, and execute shows a value passed: Connect root@localhost on rails_test Query SET SQL_AUTO_IS_NULL=0 Statistics Query SHOW FULL FIELDS FROM `foos` Query SHOW TABLES LIKE 'foos' Query SHOW CREATE TABLE `foos` Prepare SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = ? LIMIT 1 Execute SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1 Close stmt Quit When issuing a Foo.find(1) with prepared_statements:false, the bind variable has been removed and substituted with the value, and the query interface is used instead of the prepared statement interface: Connect root@localhost on rails_test Query SET SQL_AUTO_IS_NULL=0 Statistics Query SHOW FULL FIELDS FROM `foos` Query SHOW TABLES LIKE 'foos' Query SHOW CREATE TABLE `foos` Query SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1 Quit
* | | fix association :extend optionJon Leighton2012-07-136-16/+26
| | |
* | | Merge pull request #7048 from kennyj/tiny_fixesRafael Mendonça França2012-07-133-14/+10
|\ \ \ | | | | | | | | [tiny fixes] Remove more duplicated code.
| * | | Remove duplicated unique index name.kennyj2012-07-141-4/+7
| | | |
| * | | Remove instance level quote_value method. This method is private and also ↵kennyj2012-07-142-10/+3
|/ / / | | | | | | | | | exists in class method.
* | | Merge pull request #7045 from kennyj/remove_duplicated_code_20120714Rafael Mendonça França2012-07-131-11/+3
|\ \ \ | | | | | | | | Remove duplicated code in the AR::Store.
| * | | Remove duplicated code in the AR::Store.kennyj2012-07-141-11/+3
| | | |
* | | | revises RUNNING_UNIT_TESTS to delegate stuff to the contributing guideXavier Noria2012-07-131-11/+5
| | | |
* | | | move the deprecated options into active_record_deprecated_findersJon Leighton2012-07-132-5/+2
| | | |
* | | | stop using class_attribute where methods/inheritance will suffice.Jon Leighton2012-07-139-55/+57
| | | |
* | | | Merge pull request #7044 from kytrinyx/documentation-ar-unit-testsXavier Noria2012-07-131-0/+5
|\ \ \ \ | |/ / / |/| | | Add note about needing mysql superuser for unit tests.