1)我有静态站点和魔杖来从bitbucket设置“自动拉取”。
2)我有来自bitbucket的webhook。
3)我有 bash 脚本,可以执行“git pull”
当 nginx catch 请求时如何运行这个脚本?
server {
listen 80;
server_name example.ru;
root /path/to/root;
index index.html;
access_log /path/to/logs/nginx-access.log;
error_log /path/to/logs/nginx-error.log;
location /autopull {
something to run autopull.sh;
}
location / {
auth_basic "Hello, login please";
auth_basic_user_file /path/to/htpasswd;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试了 lua_block 和 fastcgi 服务,但都失败了。lua 不运行 os.execute("/path/to/script") 并且不写入日志。fastcgi 更成功,但它没有权限,因为我的 www-data 用户在我的 bitbuchet 存储库中没有 ssh-key 。
有一个创建分页范围的新选项 - get_elided_page_range https://docs.djangoproject.com/en/3.2/ref/paginator/#django.core.paginator.Paginator.get_elided_pa ge_range
我应该如何使用它?如何设置参数?我正在使用 CBV ListView。我尝试了https://nemecek.be/blog/105/how-to-use-elided-pagination-in-django-and-solve-too-many-pages-problem但它对我不起作用。
我有 81 页,当前页是 10。问题是我总是有范围 1 2 3 4 ... 80 81 我做错了什么?
#views.py
class TrailersListView(ListView):
queryset = Trailer.objects.all()
paginate_by = 10
Run Code Online (Sandbox Code Playgroud)
#模板.html
{% for i in paginator.get_elided_page_range %}
{% if page_obj.number == i %}
<li class="active page-item">
<span class="page-link">{{ i }}</span>
</li>
{% else %}
{% if i == paginator.ELLIPSIS %}
<li class="page-item">
<span class="page-link">{{ paginator.ELLIPSIS }}</span>
</li>
{% else %}
<li class="page-item">
<a class="page-link" href="?page={{ i }}">{{ i }}</a> …
Run Code Online (Sandbox Code Playgroud)