小编M.A*_*hah的帖子

Vuex-Persistedstate 在重新加载时运行突变

我正在使用 Nuxt 2、Vue 2、Vuex 3、Vuetify 2、vuex-persistedstate 4 和 nuxt-i18n 6。

我设置此插件来保留包含RTL 状态语言代码的 Vuex 状态:

plugins/persistedState.client.js

import createPersistedState from 'vuex-persistedstate'
export default ({ store, req, vuetify, $vuetify }) => {
  createPersistedState({
    paths: [
      'app.isRTL',
      'app.langCode'
    ]
  })(store)
}

Run Code Online (Sandbox Code Playgroud)

另外,我编写了一些突变来保存状态中的设置并将主题应用于 vuetify:

store/app/index.js


export default {
  namespaced: true,
  state: {
    isRTL: false,
    langCode: 'en'
  },
  mutations: {
    setRTL: function (state, isRTL) {
      this.app.vuetify.framework.rtl = isRTL
      state.isRTL = isRTL
  },
    setLangCode: function (state, langCode) {
      this.app.vuetify.framework.lang.current  = langCode …
Run Code Online (Sandbox Code Playgroud)

nuxt.js vuetify.js nuxt-i18n vuex4

6
推荐指数
0
解决办法
158
查看次数

Debug=False 中不存在 url 的 Django 500 错误

我在 python 3.6.7 中使用 Django 2.1.3。假设我有这个 URL 路径:

path('admin/', admin.site.urls)
Run Code Online (Sandbox Code Playgroud)

如果我浏览到/ad,而DEBUG = True我看到普通的Django 404错误页面:

在此处输入图片说明

但是,如果我让DEBUG = False服务器向我显示500.htm而不是404.html无效的 URL /ad(不匹配任何 URL 模式)。

404.html是否会显示该引发404错误一个有效的URL。(例如当函数发生不存在的对象查询时get_object_or_404

这是我的/templates目录结构:

/templates
    400.html
    403.html
    404.html
    500.html
    index.html
    ...
Run Code Online (Sandbox Code Playgroud)

那么,如果请求 URL 不匹配任何 URL 模式,我应该如何告诉 Django 在生产中(除了开发之外)显示 404 错误?

笔记:

  • 根据docs,如果我404.html在根模板目录中有一个,则此 404.html 将与默认错误处理程序一起使用。

更新:

我发现这是因为defaults.page_not_found引发了 a Resolver404,这是由以下原因引起的:

传递给 resolve() 的路径没有映射到视图

这正是发生的事情,(/ad不匹配任何视图)

这是我的 …

django django-urls django-errors

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