aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/lib
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #17685 from claudiob/document-form-for-extra-optionsRafael Mendonça França2014-11-201-0/+15
|\ | | | | | | | | | | | | Document *all* the options accepted by form_for Conflicts: actionview/lib/action_view/helpers/form_helper.rb
| * Document *all* the options accepted by form_forclaudiob2014-11-201-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The [current documentation of form_for](http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-form_for) is incomplete: > The rightmost argument to form_for is an optional hash of options - > :url - The URL the form is to be submitted to. This may be represented in the same way as values passed to url_for or link_to. So for example you may use a named route directly. When the model is represented by a string or symbol, as in the example above, if the :url option is not specified, by default the form will be sent back to the current url (We will describe below an alternative resource-oriented usage of form_for in which the URL does not need to be specified explicitly). > :namespace - A namespace for your form to ensure uniqueness of id attributes on form elements. The namespace attribute will be prefixed with underscore on the generated HTML id. > :html - Optional HTML attributes for the form tag. This commit completes the documentation by specifying that: * `:authenticity_token` is also a valid option (as [documented here](https://github.com/rails/rails/blob/b0f44c9ff0be84ebc42760029adeeb9dd954655f/actionview/lib/action_view/helpers/form_helper.rb#L396)) * `:method` is also a valid option (as [tested here](https://github.com/rails/rails/blob/b0f44c9ff0be84ebc42760029adeeb9dd954655f/actionview/test/template/form_helper_test.rb#L1819)) * `:remote` is also a valid option (as [tested here](https://github.com/rails/rails/blob/b0f44c9ff0be84ebc42760029adeeb9dd954655f/actionview/test/template/form_helper_test.rb#L1850)) [ci skip]
* | Add `:enforce_utf8` option to form_forclaudiob2014-11-201-0/+3
|/ | | | | | | | | Since 06388b0 `form_tag` accepts the option `enforce_utf8` which, when set to false, prevents the hidden "UTF8 enforcer" field from appearing in the output. This commit implements the same behavior for `form_for`. Stems from https://github.com/rails/rails/pull/17685#issuecomment-63871395
* Some valid block calls in templates caused syntax errorsAkira Matsuda2014-11-201-1/+1
| | | | Now ActionView accepts <%= foo(){ %> and <%= foo()do %> :golf:
* Add space in :start_year description for date_selectRyan Bigg2014-11-191-1/+1
|
* Make sure assert_select can assert body tagRafael Mendonça França2014-11-181-4/+5
| | | | | | | | | This reverts commit f93df52845766216f0fe36a4586f8abad505cac4, reversing changes made to a455e3f4e9dbfb9630d47878e1239bc424fb7d13. Conflicts: actionpack/lib/action_controller/test_case.rb actionview/lib/action_view/test_case.rb
* document_root_element need to be publicRafael Mendonça França2014-11-171-5/+5
|
* Call gsub with a Regexp instead of a String for better performancePablo Herrero2014-11-012-2/+2
|
* Honor public/private in ActionView::Helpers::Tags::Base#valueTobias Pfeiffer2014-10-311-1/+1
| | | | | * use public_send instead of send to avoid calling private methods in form helpers
* Prepare for 4.2.0.beta4 releaseGodfrey Chan2014-10-301-1/+1
|
* Fix typo at form_helper docs [ci skip]Pablo Herrero2014-10-291-2/+2
|
* edit pass over all warningsXavier Noria2014-10-281-1/+5
| | | | | | | | | | | | | | | This patch uniformizes warning messages. I used the most common style already present in the code base: * Capitalize the first word. * End the message with a full stop. * "Rails 5" instead of "Rails 5.0". * Backticks for method names and inline code. Also, converted a few long strings into the new heredoc convention.
* let's warn with heredocsXavier Noria2014-10-281-3/+5
| | | | | | | | | | | | The current style for warning messages without newlines uses concatenation of string literals with manual trailing spaces where needed. Heredocs have better readability, and with `squish` we can still produce a single line. This is a similar use case to the one that motivated defining `strip_heredoc`, heredocs are super clean.
* Fix doc markup for `NumberHelper` [ci skip]Ryunosuke SATO2014-10-291-5/+5
| | | | | The character "*" is unnecessary in option candidates. This incorrect markup was injected in e8c9aeca .
* Use new hash syntaxRafael Mendonça França2014-10-251-2/+3
|
* :scissors:Rafael Mendonça França2014-10-251-2/+1
|
* Merge pull request #17064 from frenkel/fix_select_tag_include_blankRafael Mendonça França2014-10-251-2/+8
|\ | | | | Use include_blank value as option label
| * Use include_blank value as option labelFrank Groeneveld2014-10-171-2/+8
| | | | | | | | Update select_tag to reflect documentation and behave the same as form builder select. If the value of include_blank is not boolean true, use that value as the option label.
* | Clarify comments about sanitized_allowed_tagsPrathamesh Sonpatki2014-10-251-2/+2
| | | | | | | | | | | | | | | | - Clarify that arguments are expected in array format. - Extension of https://github.com/rails/rails/pull/17390. - https://github.com/rails/rails/pull/17390 was targeted against 4-1-stable branch. This commit updates master. - [ci skip]
* | Reduce object allocationAkira Matsuda2014-10-251-1/+5
| |
* | Reduce object allocationAkira Matsuda2014-10-251-1/+1
| |
* | Avoid creating unneeded Hash instance and calling slow Hash#fetchAkira Matsuda2014-10-251-1/+1
| |
* | Fix how file_ and password_field_tag edit optionsclaudiob2014-10-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit fixes the behavior of `file_field_tag` and `password_field_tag` when invoked with a hash of options. These two helpers are different from all the other ones in that they modify the options hash passed as a parameter, whereas all the other helpers duplicate it before updating it. The result is that *bad things* can happen if the user re-uses the same hash. For instance, users who write the following code to display a file field followed by a text field (both with the same class): ```rhtml <% options = {class: 'important'} %> <%= file_field_tag 'Upload', options %> <%= text_field_tag 'Name', options %> ``` would instead see **two file fields!** ```html <input class="important" id="Upload" name="Upload" type="file"> <input class="important" id="Name" name="Name" type="file" value="value"> ``` This PR replaces `update` with `merge` in the code of the two helpers, fixing the issue above. The included test verifies the change, since it passes after this PR, but fails before with the following error: ``` Expected: <input type="text" name="title" id="title" value="Hello!" class="important" /> Actual: <input type="password" name="title" id="title" value="Hello!" class="important" /> ```
* | Merge pull request #17271 from claudiob/remove-duplicate-stringify-keysRafael Mendonça França2014-10-151-13/+13
|\ \ | | | | | | Remove duplicate stringify_keys in text_field_tag and number_field_tag
| * | Remove duplicate stringify_keys in text_field_tagclaudiob2014-10-151-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All the methods that invoke `text_field_tag` (such as `hidden_field_tag`) and all the methods that invoke `number_field_tag` (that is `range_field_tag`) do not need to call `stringify_keys` on their `options` parameter since the `text_field_tag` method [is already doing it internally](https://github.com/claudiob/rails/blob/4159134524f4c78d008eef9d9a17f73a3172dcc8/actionview/lib/action_view/helpers/form_tag_helper.rb#L182): ```ruby def text_field_tag(name, value = nil, options = {}) tag :input, { "type" => "text", "name" => name, "id" => sanitize_to_id(name), "value" => value }.update(options.stringify_keys) end ``` and `number_field_tag` is [already doing it internally](https://github.com/claudiob/rails/blob/e3207bdbba55f3806441f22b175557579bc0b051/actionview/lib/action_view/helpers/form_tag_helper.rb#L780) as well: ```ruby def number_field_tag(name, value = nil, options = {}) options = options.stringify_keys ... end [Note #1: My code uses `merge` to respect the existing behavior of duplicating the `options` hash before updating its keys, see https://github.com/rails/rails/pull/17096#issuecomment-57223827] [Note #2: My code uses symbols instead of strings (e.g.: `:hidden`) to look forward to future version of Ruby/Raiks (GC symbols); the result of the method, however, is the same, because the symbols are stringified inside `text_field_tag`] [Note #3: I had previously created a similar PR #17096 but decided to split it into multiple PRs given the feedback received in the comments]
* | | Replace Enumerable#reverse.each with Enumerable#reverse_eachErik Michaels-Ober2014-10-131-1/+1
|/ /
* | remove un-needed sortschneems2014-10-071-1/+1
| | | | | | | | | | | | HTML doesn't care what order the elements are rendered in, so why should we? Updates tests to use proper `assert_dom_equal` instead of `assert_equal` /cc @jeremy
* | Use #tr instead of #gsub where possibleAlex Weidmann2014-10-022-2/+2
| |
* | use tr instead of gsub when possibleAdrian Rangel2014-10-011-1/+1
| |
* | Added processing of `nil` to `highlight` helper methodigor042014-09-301-1/+1
| |
* | Parse HTML as document fragment.Kasper Timm Hansen2014-09-291-1/+1
| | | | | | | | This is to match the changes in Rails Dom Testing rails/rails-dom-testing#20.
* | Preparing for 4.2.0.beta2 releaseRafael Mendonça França2014-09-261-1/+1
| |
* | Add +variants to ActionView::FileSystemResolver documentation.Felipe Oliveira2014-09-261-3/+4
|/
* Revert "Revert "Merge pull request #16888 from jejacks0n/render_template""Godfrey Chan2014-09-261-2/+2
| | | | This reverts commit 585e75696b31395aee895e5366e331c07c3f5ee1.
* Revert "Merge pull request #16888 from jejacks0n/render_template"Godfrey Chan2014-09-231-2/+2
| | | | | | | This reverts commit 07635a74b5ee08dcba3f6617def6230d8f114fe5, reversing changes made to 1b5f61a025b6ce1ee52b7148e3ed2a9acbde28b9. Reason: it's not ready :bomb:, see https://github.com/rails/rails/pull/16888#issuecomment-56400816
* Merge pull request #16888 from jejacks0n/render_templateGodfrey Chan2014-09-231-2/+2
|\ | | | | | | Changes default render behavior from file to template.
| * Changes default render behavior from file to template.jejacks0n2014-09-111-2/+2
| |
* | Remove wrapping <div> in form helpers from docclaudiob2014-09-222-35/+19
| | | | | | | | | | | | | | | | | | | | [ci skip] 89ff1f8 and 1de258e6 removed from the HTML generated by the form helpers the <div> that was wrapping the field elements inside the <form>. This commit updates the documentation of the methods to reflect the two commits above.
* | Merge pull request #16790 from cirosantilli/explain-erb-space-removalRafael Mendonça França2014-09-161-1/+3
|\ \ | | | | | | | | | | | | Explain ERB space removal. [ci skip]
| * | Explain ERB space removal. [ci skip]Ciro Santilli2014-09-111-1/+3
| | |
* | | handle <%== nil %> casesAaron Patterson2014-09-142-2/+7
| | | | | | | | | | | | | | | This is much less common than string literal appends, so add a special case method for it. Maybe fixes bug reported by @jeremy on 97ef636191933f1d4abc92fc10871e6d1195285c
* | | Stop nil checking on safe_append=Aaron Patterson2014-09-141-4/+0
| | | | | | | | | | | | | | | | | | ERB compiler guarantees safe_append= will be called with a string, so nil checks don't make sense. Anything else calling this method should check for nil themselves before calling
* | | Revert "Merge pull request #15312 from JuanitoFatas/action_view/asset_path"Matthew Draper2014-09-141-1/+1
| |/ |/| | | | | | | | | | | This reverts commit 21ec7fefea5a1b823cb88733b019b3d52240801d. Per #16911, there's actually a good reason for a "blank" value to have a useful `to_s` here. So let's also add some tests to prove that.
* | Do not memoize document_root_element in view testsRafael Mendonça França2014-09-081-2/+1
| | | | | | | | | | | | | | Memoizing will not make possible to assert the output of the view if it is changed after the first assert_select call Related with plataformatec/simple_form#1130 and rails/rails-dom-testing#15
* | fix the undefined method content_tag #15245Rajarshi Das2014-09-061-0/+1
| | | | | | | | not required include ActionView::Helpers::TagHelper in test as well
* | Extract data/aria attribute prefixes to a constantRafael Mendonça França2014-09-031-1/+3
| |
* | Add support for ARIA attributes in tagsPaoMar2014-09-031-4/+4
| |
* | Ship with rails-html-sanitizer instead.Kasper Timm Hansen2014-09-031-8/+3
|/
* Shorten ActionView::Base doc summary line. [ci skip]Ciro Santilli2014-09-021-3/+4
|
* Clarify Rails uses erubis not stdlin ERB. [ci skip]Ciro Santilli2014-09-021-1/+2
|