Understanding Reverse and Reverse_Lazy()

So I am reading the documentation on reverse() and reverse_lazy() and I want to verify my understanding the concept for I am new to Django. Basically reverse and reverse_lazy are url finders. And you use the reverse function and than supply the url=name from the path () function or the value from the .views() that is supplied in the function.


# using the named URL
reverse("news-archive")

# passing a callable object
# (This is discouraged because you can't reverse namespaced views this way.)
from news import views

reverse(views.archive)

So in this example I am seeing reverse(“News-archive”) and reverse(views.archive). And reverse will go into the urls.py file and find those values and grab the url correct?

Documentation Link:

It will grab a url for it, yes. You can have multiple urls referencing the same view, with potentially different parameters. It will try to find the right url to match the parameter set, but it will return the first url it finds that satisfies those parameters. (In the common-case, you don’t need to worry about such things.)