mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 07:08:01 +00:00
Add Link To The Current Page With Query Params as a Rails til
This commit is contained in:
@@ -10,7 +10,7 @@ pairing with smart people at Hashrocket.
|
|||||||
|
|
||||||
For a steady stream of TILs, [sign up for my newsletter](https://tinyletter.com/jbranchaud).
|
For a steady stream of TILs, [sign up for my newsletter](https://tinyletter.com/jbranchaud).
|
||||||
|
|
||||||
_1090 TILs and counting..._
|
_1091 TILs and counting..._
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -678,6 +678,7 @@ _1090 TILs and counting..._
|
|||||||
- [Ignore Poltergeist JavaScript Errors](rails/ignore-poltergeist-javascript-errors.md)
|
- [Ignore Poltergeist JavaScript Errors](rails/ignore-poltergeist-javascript-errors.md)
|
||||||
- [Include Devise Helpers In Your Controller Tests](rails/include-devise-helpers-in-your-controller-tests.md)
|
- [Include Devise Helpers In Your Controller Tests](rails/include-devise-helpers-in-your-controller-tests.md)
|
||||||
- [Inspect Previous Changes To ActiveRecord Object](rails/inspect-previous-changes-to-activerecord-object.md)
|
- [Inspect Previous Changes To ActiveRecord Object](rails/inspect-previous-changes-to-activerecord-object.md)
|
||||||
|
- [Link To The Current Page With Query Params](rails/link-to-the-current-page-with-query-params.md)
|
||||||
- [List All Installable Rails Versions](rails/list-all-installable-rails-versions.md)
|
- [List All Installable Rails Versions](rails/list-all-installable-rails-versions.md)
|
||||||
- [List The Enqueued Jobs](rails/list-the-enqueued-jobs.md)
|
- [List The Enqueued Jobs](rails/list-the-enqueued-jobs.md)
|
||||||
- [Load Records In Batches With find_each](rails/load-records-in-batches-with-find-each.md)
|
- [Load Records In Batches With find_each](rails/load-records-in-batches-with-find-each.md)
|
||||||
|
|||||||
36
rails/link-to-the-current-page-with-query-params.md
Normal file
36
rails/link-to-the-current-page-with-query-params.md
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
# Link To The Current Page With Query Params
|
||||||
|
|
||||||
|
The `link_to` method is an ActionView helper for generating an `a` tag within a
|
||||||
|
Rails view. There are two arguments that tend to comprise this method: the link
|
||||||
|
text and a path helper.
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
<%= link_to 'Home', root_path %>
|
||||||
|
```
|
||||||
|
|
||||||
|
The `link_to` method can be used to generate a link to the current page with
|
||||||
|
query params. You can do this be providing a hash instead of a path helper as
|
||||||
|
the second argument.
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
<%= link_to "All", {filter: 'all'} %>
|
||||||
|
<%= link_to "New", {filter: 'new'} %>
|
||||||
|
<%= link_to "Posted", {filter: 'posted'} %>
|
||||||
|
```
|
||||||
|
|
||||||
|
The hash can contain one or more key-value pairs which will be turned into
|
||||||
|
query params and appended to the end of the current base path.
|
||||||
|
|
||||||
|
If these are part of the `posts` index page, then they will render as:
|
||||||
|
|
||||||
|
```html
|
||||||
|
<a href="/posts?filter=all">All</a>
|
||||||
|
<a href="/posts?filter=new">New</a>
|
||||||
|
<a href="/posts?filter=posted">Posted</a>
|
||||||
|
```
|
||||||
|
|
||||||
|
This is a great way to create links for a Rails action that presents different
|
||||||
|
data based on query params. Often this is an index page where filtering is
|
||||||
|
needed.
|
||||||
|
|
||||||
|
[source](https://gorails.com/episodes/rails-link-to-current-page-with-params)
|
||||||
Reference in New Issue
Block a user