我在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页面?
码:
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();
似乎无法正常工作.
错误在哪里?
如何仅删除特定标记?
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) $(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
.所以我认为我需要这些功能.
我在 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) 来自: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-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
.
题:
为什么会这样?
参数是什么意思"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) 我有一个像这样的跟随模型:
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。
但我不能确定。
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)
我怎样才能做到这一点?
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