因此,我是django的新手,我一直在研究PHP CodeIgniter,其中将绝对URL放入href中,我通过调用URL帮助程序使用了名为let myView = UIView()
myView.frame = CGRect(x: 200, y: 200, width: 200, height: 200)
myView.myViewCorners()
//myView.myViewCorners(width: myView.frame.width)//Pass View width
view.addSubview(myView)
extension UIView {
//If you want only round corners
func myViewCorners() {
layer.cornerRadius = 10
layer.borderWidth = 1.0
layer.borderColor = UIColor.red.cgColor
layer.masksToBounds = true
}
//If you want complete round shape, enable above comment line
func myViewCorners(width:CGFloat) {
layer.cornerRadius = width/2
layer.borderWidth = 1.0
layer.borderColor = UIColor.red.cgColor
layer.masksToBounds = true
}
}
的函数
base_url
给出类似的输出
<?php echo base_url().'user/login';?>
我想要在Django中做同样的事情,但没有任何我能理解的答案。我不想使用相对URL,我的预期结果应该是这样的
http://localhost/projectname/user/login
以上代码应返回
{% url 'login' %}
答案 0 :(得分:2)
您可以通过django中的2种方法获取绝对URL。
一种方法是使用来构建自定义模板标签
HttpRequest中的HttpRequest.build_absolute_uri()
方法
或者只是在django模板中使用以下行。
<a href="{{ request.get_host }}{% url your_url_name %}">Link</a>
有关详细信息,请参见此链接: https://docs.djangoproject.com/en/2.1/ref/request-response/#django.http.HttpRequest.get_host
答案 1 :(得分:0)
如果您在 urls.py 文件中定义的URL路径是这样的:
path('user/', views.user, name='user_list')
然后您可以像这样在模板中调用此URL:
<a href="{% url 'user_list' %}">Users</a>
查看https://docs.djangoproject.com/en/2.1/ref/templates/builtins/#url了解详情。
对于绝对URL,您可以使用:
<a href="{{ request.get_host }}{% url 'user_list' %}">Users</a>