mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Fix grammar in README
* Fixes grammatical errors * Fixes capitalization * Fixes punctuation
This commit is contained in:
parent
f45b5f9dc8
commit
97dcd5133c
1 changed files with 9 additions and 9 deletions
18
README.md
18
README.md
|
@ -8,8 +8,8 @@ Arel Really Exasperates Logicians
|
||||||
|
|
||||||
Arel is a SQL AST manager for Ruby. It
|
Arel is a SQL AST manager for Ruby. It
|
||||||
|
|
||||||
1. Simplifies the generation of complex SQL queries
|
1. simplifies the generation of complex SQL queries, and
|
||||||
2. Adapts to various RDBMSes
|
2. adapts to various RDBMSes.
|
||||||
|
|
||||||
It is intended to be a framework framework; that is, you can build your own ORM
|
It is intended to be a framework framework; that is, you can build your own ORM
|
||||||
with it, focusing on innovative object and collection modeling as opposed to
|
with it, focusing on innovative object and collection modeling as opposed to
|
||||||
|
@ -17,7 +17,7 @@ database compatibility and query generation.
|
||||||
|
|
||||||
## Status
|
## Status
|
||||||
|
|
||||||
For the moment, Arel uses Active Record's connection adapters to connect to the various engines, connection pooling, perform quoting, and do type conversion.
|
For the moment, Arel uses Active Record's connection adapters to connect to the various engines and perform connection pooling, quoting, and type conversion.
|
||||||
|
|
||||||
## A Gentle Introduction
|
## A Gentle Introduction
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ Generating a query with Arel is simple. For example, in order to produce
|
||||||
SELECT * FROM users
|
SELECT * FROM users
|
||||||
```
|
```
|
||||||
|
|
||||||
you construct a table relation and convert it to sql:
|
you construct a table relation and convert it to SQL:
|
||||||
|
|
||||||
```ruby
|
```ruby
|
||||||
users = Arel::Table.new(:users)
|
users = Arel::Table.new(:users)
|
||||||
|
@ -107,7 +107,7 @@ users.join(photos).on(users[:id].eq(photos[:user_id]))
|
||||||
# => SELECT * FROM users INNER JOIN photos ON users.id = photos.user_id
|
# => SELECT * FROM users INNER JOIN photos ON users.id = photos.user_id
|
||||||
```
|
```
|
||||||
|
|
||||||
Left Joins
|
Left joins:
|
||||||
|
|
||||||
```ruby
|
```ruby
|
||||||
users.join(photos, Arel::Nodes::OuterJoin).on(users[:id].eq(photos[:user_id]))
|
users.join(photos, Arel::Nodes::OuterJoin).on(users[:id].eq(photos[:user_id]))
|
||||||
|
@ -128,7 +128,7 @@ users.project(users[:name]).group(users[:name])
|
||||||
# => SELECT users.name FROM users GROUP BY users.name
|
# => SELECT users.name FROM users GROUP BY users.name
|
||||||
```
|
```
|
||||||
|
|
||||||
The best property of arel is its "composability", or closure under all operations. For example, to restrict AND project, just "chain" the method invocations:
|
The best property of Arel is its "composability," or closure under all operations. For example, to restrict AND project, just "chain" the method invocations:
|
||||||
|
|
||||||
```ruby
|
```ruby
|
||||||
users \
|
users \
|
||||||
|
@ -182,7 +182,7 @@ users.project(users[:age].average.as("mean_age"))
|
||||||
|
|
||||||
### The Crazy Features
|
### The Crazy Features
|
||||||
|
|
||||||
The examples above are fairly simple and other libraries match or come close to matching the expressiveness of Arel (e.g., `Sequel` in Ruby).
|
The examples above are fairly simple and other libraries match or come close to matching the expressiveness of Arel (e.g. `Sequel` in Ruby).
|
||||||
|
|
||||||
#### Inline math operations
|
#### Inline math operations
|
||||||
|
|
||||||
|
@ -232,7 +232,7 @@ comments_with_replies = \
|
||||||
|
|
||||||
This will return the reply for the first comment.
|
This will return the reply for the first comment.
|
||||||
|
|
||||||
[Common Table Expressions(CTE)](https://en.wikipedia.org/wiki/Common_table_expressions#Common_table_expression) support via:
|
[Common Table Expressions (CTE)](https://en.wikipedia.org/wiki/Common_table_expressions#Common_table_expression) support via:
|
||||||
|
|
||||||
Create a `CTE`
|
Create a `CTE`
|
||||||
|
|
||||||
|
@ -275,7 +275,7 @@ photos.project(photo_clicks.as("photo_clicks"))
|
||||||
|
|
||||||
## Contributing to Arel
|
## Contributing to Arel
|
||||||
|
|
||||||
Arel is work of many contributors. You're encouraged to submit pull requests, propose
|
Arel is the work of many contributors. You're encouraged to submit pull requests, propose
|
||||||
features and discuss issues.
|
features and discuss issues.
|
||||||
|
|
||||||
See [CONTRIBUTING](CONTRIBUTING.md).
|
See [CONTRIBUTING](CONTRIBUTING.md).
|
||||||
|
|
Loading…
Reference in a new issue