小编tou*_*ist的帖子

如何在django中有意返回404页面

我在django中制作了自定义404页面.而且我试图故意获得404错误页面.

MyProject的/ urls.py:

from website.views import customhandler404, customhandler500, test

urlpatterns = [
    re_path(r'^admin/', admin.site.urls),
    re_path(r'^test/$', test, name='test'),
]
handler404 = customhandler404
handler500 = customhandler500
Run Code Online (Sandbox Code Playgroud)

网站/ views.py

def customhandler404(request):
    response = render(request, '404.html',)
    response.status_code = 404
    return response


def customhandler500(request):
    response = render(request, '500.html',)
    response.status_code = 500
    return response

def test(request):
    raise Http404('hello')
Run Code Online (Sandbox Code Playgroud)

但是当我去127.0.0.1:8000/test/时,似乎又回来了 500.html

终端说:

[24/Mar/2018 22:32:17] "GET /test/ HTTP/1.1" 500 128

我怎么能故意得到404页面?

django

13
推荐指数
1
解决办法
9497
查看次数

如何删除Android GoogleMap上的特定标记

码:

private Marker mCurrentMarker;
private ArrayList<Marker> mMarkerArrayList;

@Override
    public void onMapReady(final GoogleMap googleMap) {
        mGoogleMap = googleMap;

        mMarkerArrayList = new ArrayList<>();
        googleMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
            @Override
            public void onMapClick(LatLng point) {

                MarkerOptions marker_onclick = new MarkerOptions().position(
                        new LatLng(point.latitude, point.longitude)).title(getString(R.string.now_your_location));
                if (mMarkerArrayList.size() > 0){
                    Marker marker_to_remove = mMarkerArrayList.get(0);
                    marker_to_remove.remove();
                }

                mCurrentMarker = mGoogleMap.addMarker(marker_onclick);

                mGoogleMap.addMarker(marker_onclick);
                mMarkerArrayList.add(mCurrentMarker);

            }
        });
    }
Run Code Online (Sandbox Code Playgroud)

我希望当我点击地图时,会有一个与显示点击位置相关的标记.和被删除之前的标记.因此,只有一个与显示点击位置相关的标记.

我已经知道mGoogleMap.clean();可以清理地图,也可以在地图上标记.

但我想删除特定的标记.(因为,在我的应用程序中,有很多种标记.例如,一个主标记显示用户家的位置,而公共汽车站标记显示公共汽车站的位置.)

所以我创建了ArrayList并尝试使用它.

但它没有用.

我想当我点击地图时,addmarker();效果不错但.remove();似乎无法正常工作.

错误在哪里?

如何仅删除特定标记?

我读过:如何删除Google地图v2中的标记?

android google-maps

5
推荐指数
1
解决办法
1万
查看次数

为什么 docker 容器中的 Django 不起作用?

Dockerfile:

FROM python:3.6.5-jessie
MAINTAINER example-user

RUN apt-get update \
    && apt-get install -y vim
RUN mkdir require
COPY ./requirements.txt require/requirements.txt
RUN pip install -r require/requirements.txt
EXPOSE 8000
Run Code Online (Sandbox Code Playgroud)

要求.txt

Django==2.0.2
Run Code Online (Sandbox Code Playgroud)

如上所述,我制作了一张具有名称的图像sample-image

接下来,我运行了一个容器sample-image

docker run -ti --name sample_django -p 8001:8000 sample-image /bin/bash

在容器狂欢中,我这样命令,

root@4a947abf5ce5:/# mkdir startdir && cd startdir
root@4a947abf5ce5:/startdir# django-admin startproject sample .
root@4a947abf5ce5:/startdir# python manage.py runserver
Run Code Online (Sandbox Code Playgroud)

它返回了它:

Performing system checks...

System check identified no issues (0 silenced).

You have 14 unapplied migration(s). Your project may not …
Run Code Online (Sandbox Code Playgroud)

django docker

2
推荐指数
1
解决办法
1178
查看次数

<form onsubmit ="function();">无效

$(function() {
  function make_alert() {
    var text = $('#text_').val(); //let suppose it as true
    if (true) {
      alert("yes_text");
      return false;
    } else {
      alert("no_text");
      return false;
    }
  }
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form method="post" action="#" onsubmit="return make_alert()">
	<textarea id="text_">
	</textarea>
	<button id="btn_submit" type="submit" name="type" value="create_first">
	Submit
	</button>
</form>
Run Code Online (Sandbox Code Playgroud)

单击"提交"按钮时,此代码会发出警报.

onsubmit在html form标签中写道,但似乎无法正常工作.

我怎样才能做到这一点?

我想要的是我之前可以对待一些东西form post.所以我认为我需要这些功能.

html javascript jquery

2
推荐指数
1
解决办法
1292
查看次数

如何使用个人访问令牌进行 git commit?

我在 github 上制作了所有权限保留的个人访问令牌。

我看到了

git clone https://<username>:<personal_access_token>@github.com/<username>/<project_name>.git
Run Code Online (Sandbox Code Playgroud)

作品。

那么如何使用个人访问令牌克隆、提交和推送呢?

像这样

cd /tmp
git clone https://<username>:<personal_access_token>@github.com/<username>/<project_name>.git

cd /tmp/auto_tutorial
git commit --allow-empty -m 'Trigger notification'
git push https://<username>:<personal_access_token>@github.com/<username>/<project_name>.git master
Run Code Online (Sandbox Code Playgroud)

git

2
推荐指数
3
解决办法
6696
查看次数

Django,当使用ForeignKey字段时,哪个更好的是blank = True或null = True?

来自:https : //docs.djangoproject.com/en/2.0/ref/models/fields/#django.db.models.Field.null

避免在基于字符串的字段(例如CharField和TextField)上使用null。如果基于字符串的字段具有null = True,则意味着它具有“无数据”的两个可能值:NULL和空字符串。在大多数情况下,为“无数据”使用两个可能的值是多余的; Django约定是使用空字符串,而不是NULL。

那么在ForeignKey领域上有什么更好的呢?ForeignKey字段不是基于字符串的字段,不是吗?

我想知道 what is convention for ForeignKey in django.

null =真是更好还是空白=真是更好?在性能,便利性或其他方面。

django foreign-keys

1
推荐指数
2
解决办法
864
查看次数

django-redis无效的DB索引错误和redis url的含义

我正在使用django-redis:https://niwinz.github.io/django-redis/latest/

在设置和测试缓存时,我有一个问题.

由此:https://niwinz.github.io/django-redis/latest/#_installation

有这样的代码:

CACHES = {
    "default": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://127.0.0.1:6379/1",
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我使用这个不变的任何LOCATION代码作为:"LOCATION": "redis://127.0.0.1:6379/1",它做得很好.即便"LOCATION": "redis://127.0.0.1:6379/2"看起来效果也不错.

但如果我改变这个"LOCATION": "redis://127.0.0.1:6379/220",

它回来了invalid DB index error.

题:

  1. 为什么会这样?

  2. 参数是什么意思"LOCATION": "redis://127.0.0.1:6379/parameter"

这是追溯:

Environment:


Request Method: GET
Request URL: http://127.0.0.1:8000/test/

Django Version: 2.0.2
Python Version: 3.6.3
Installed Applications:
['django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'post',
 'website']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.common.CommonMiddleware', …
Run Code Online (Sandbox Code Playgroud)

python django redis

1
推荐指数
1
解决办法
1111
查看次数

django 在这种情况下如何使用 Q 和过滤相关名称?

我有一个像这样的跟随模型:

class Follow(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='fuser') #who is following
    follow = models.ForeignKey(User, on_delete=models.CASCADE, related_name='ffollow') #who is followed
Run Code Online (Sandbox Code Playgroud)

然后我想通过关注来获得用户。

案例 1:我想找到 user_john 和 user_mark 都在关注的用户。

users = User.objects.filter(Q(this_user_is_followed_by=user_john)
                            & Q(this_user_is_followed_by=user_mark))
Run Code Online (Sandbox Code Playgroud)

案例2:想找user_john关注的用户,但是关注user_mark的用户。

users = User.objects.filter(Q(there_user_is_followed_by=user_john)
                            & Q(these_user_are_following=user_mark))
Run Code Online (Sandbox Code Playgroud)

那个过滤器怎么做?太难了。

users = User.objects.filter(Q(ffollow__user=user)
                            & Q(ffollow__user=user_who_read))
Run Code Online (Sandbox Code Playgroud)

将回答 Case1。

但我不能确定。

django model filter

1
推荐指数
1
解决办法
68
查看次数

Python3,如何检查列表中是否有一些字典值?

list = [
    {'a': 'a_first', 'b': 'b_first'},
    {'a': 'a_sec', 'b': 'b_sec'},
    {'a': 'a_third', 'b': 'b_third'}
]
Run Code Online (Sandbox Code Playgroud)

我想知道价值'b_sec'是列表的关键'b'.

例:

if 'b_sec' is in list's value of 'b':
    print('found')
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

python list

-1
推荐指数
1
解决办法
47
查看次数

标签 统计

django ×5

python ×2

android ×1

docker ×1

filter ×1

foreign-keys ×1

git ×1

google-maps ×1

html ×1

javascript ×1

jquery ×1

list ×1

model ×1

redis ×1