Add event_pattern like event_url

This commit is contained in:
Raphael Michel
2023-09-22 12:24:01 +02:00
parent d7d419c826
commit 3ba36512d2

View File

@@ -33,7 +33,7 @@
# License for the specific language governing permissions and limitations under the License. # License for the specific language governing permissions and limitations under the License.
from django.urls import URLPattern from django.urls import URLPattern
from django.urls.resolvers import RegexPattern from django.urls.resolvers import RegexPattern, RoutePattern
def event_url(route, view, name=None, require_live=True): def event_url(route, view, name=None, require_live=True):
@@ -42,3 +42,11 @@ def event_url(route, view, name=None, require_live=True):
pattern._require_live = require_live pattern._require_live = require_live
return URLPattern(pattern, view, {}, name) return URLPattern(pattern, view, {}, name)
raise TypeError('view must be a callable.') raise TypeError('view must be a callable.')
def event_path(route, view, name=None, require_live=True):
if callable(view):
pattern = RoutePattern(route, name=name, is_endpoint=True)
pattern._require_live = require_live
return URLPattern(pattern, view, {}, name)
raise TypeError('view must be a callable.')