flip conditional in delete_all to handle nullify better

Nullify (or nil dependency) was doing the same thing delete_all
was doing in issue #14546, creating a large IN statement if
the association was loaded. Loaded and not loaded associations
should behave the same. The IN statement is also not great because
it's inefficient.
rewrite test to correctly test clear method

Clear should not call callbacks because it clear calls
delete_all and then returns self. It should behave the same
as delete_all. This test clarifies the goal of the test and
tests the correct outcome.
clear shouldnt fire callbacks so remove order test

Since clear shouldn't fire callbacks the order doesn't
matter since it was never updated. Remove the portion
of this test that tests for order after clear.
add test to check that loaded and non laoded are the same

Test checks that SQL is the same for a loaded vs not loaded
association (category.categorizations, category.categorization.delete_all
vs category.cartegroization.delete_al). This was fixed for delete_all
dependency but was not fixed for no (:nullify, or nil) dependency).
Merge pull request #14899 from eileencodes/fix-delete-all-with-nil-dependency-to-not-produce-in-statement

Fix delete all with nil (:nullify) dependency to not produce in statement
Update the Getting Started tutorial

Update the Getting Started tutorial to clarify where and how to add
controller actions, and fix some grammar.

This PR is an improved version of #14828, #14822 and #14815.

[skip ci]
cleanup, remove trailing whitespace. [ci skip]
Merge pull request #14905 from jonatack/patch-7

Update the Getting Started tutorial
rewrites the API docs of favicon_link_tag [ci skip]

Motivated by #14907.
the use of ... in place >> using ... instead

[ci skip]
Merge pull request #14909 from jonatack/patch-7

the use of ... in place >> using ... instead
split nil / Hash cases in url_for

this reduces the number of comparisons and method calls `url_for`
requires.  The nil case no longer calls `symbolize_keys`, we already
know options is nil, so no more ||=, and since it is nil we already know
that options[:host] will be nil too.
Stringify variables names for mysql connections

For mysql2/mysql adapters, `sql_mode` variable name set in `database.yml`
as string, was ignored and `sql_mode` was set to use strict mode.

Fixes #14895