小编doe*_*uvc的帖子

如何配置 Microsoft Pylance 使其不使用 django 的存根文件 (.pyi)?

我正在 Mac 操作系统上使用 Visual Studio Code 进行 Django 开发,并安装了微软的 pylance 扩展。以下是我的生态系统的版本规范:

OS -> MacOS Mojave
django -> 3.1.5
visual studio code -> 1.52.1
Microsoft Pylance -> 2021.1.2 Release (latest) 
Run Code Online (Sandbox Code Playgroud)

我们使用 django 3.1.5 版本中的 JSONField。Pylance 使用位于 django 的存根文件 extensions/ms-python.vscode-pylance-2021.1.2/dist/bundled/stubs/djano/db/models/__init__.pyi

在此输入图像描述

我可以清楚地看到提到的存根文件不是最新的。因此,vscode 无法解析对models.JSONField. 而对于其他类似的库jsonschema,它只是依赖于它们的__init__.py. 这就是我想要的。

在此输入图像描述

我检查了官方页面上可以配置的所有内容Pylance,但没有找到任何合适的配置。 https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance

我正在考虑以下选择:

  1. 删除django的存根文件/目录,我不知道会产生什么影响。
  2. 手动设置python.analysis.extraPaths我的 virtualenv 路径。

我正在寻找一种更有机的解决方案,我将在评论中提供上述实验的结果。

谢谢 !

python django visual-studio-code pylance

9
推荐指数
0
解决办法
4105
查看次数

使用关闭按钮在 DJango 中显示 Flash 消息

我想使用关闭按钮在 Django 中显示 Flash 消息。Django 中现有的消息框架允许显示消息但不允许关闭它。

例如,web2py 提供了这样的 flash 消息。我正在 Django 中寻找类似的功能。

web2py 中的 Flash 消息

如果可以用几行代码完成,那就太好了。我不想在 Django 之上添加任何其他库或框架。

提前致谢。

python django web2py django-views flash-message

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

使用 ubuntu 映像在 dockerfile 中安装 JDK 8 更新 172

我习惯在我的 dockerfile 中下载 java,如下所示:

# Install Java
ENV JAVA_VERSION_MAJOR 8
ENV JAVA_VERSION_MINOR 162
ENV JAVA_VERSION_BUILD 12
ENV JAVA_DOWNLOAD_HASH 0da788060d494f5095bf8624735fa2f1
RUN mkdir -p /usr/lib/jvm \
    && cd /usr/lib/jvm \
    && wget -nv --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-b${JAVA_VERSION_BUILD}/${JAVA_DOWNLOAD_HASH}/jdk-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64.tar.gz \
    && tar xf jdk-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64.tar.gz \
    && rm jdk-${JAVA_VERSION_MAJOR}u${JAVA_VERSION_MINOR}-linux-x64.tar.gz \
    && update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.${JAVA_VERSION_MAJOR}.0_${JAVA_VERSION_MINOR}/bin/java" 1
ENV JAVA_HOME /usr/lib/jvm/jdk1.${JAVA_VERSION_MAJOR}.0_${JAVA_VERSION_MINOR}
Run Code Online (Sandbox Code Playgroud)

显然,oracle 已经发布了新的更新8u172并且在 dockerfile 中下载失败了ERROR 404: Not Found.

我的问题是,如何找出JAVA_DOWNLOAD_HASH变量?

其余的变量值对我来说很清楚:

JAVA_VERSION_MAJOR 8
JAVA_VERSION_MINOR 172
JAVA_VERSION_BUILD 11
Run Code Online (Sandbox Code Playgroud)

请注意,我的基本泊坞窗图像是: ubuntu:16.04

我在 …

java java-8 docker dockerfile ubuntu-16.04

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

合并两个 JSONata 表达式

我正在使用 JSONata 来执行 JSON 到 JSON 的转换。

出于某些独特的原因,我想合并两个 JSONata 表达式:

举个例子 :

父表达式:

var script = `
{
      "data":
      {
          "name" : data.payload.Name.(FirstName & ' ' & LastName),    
          "alias": data.payload.Name.(Salutation & ' ' & FirstName),
          "active": data.payload.Status = 'New' ? true : false,
          "signature": "Have good day ," & data.payload.Name.FirstName & "!"
       }       
  }
`;
Run Code Online (Sandbox Code Playgroud)

我也有一些简单的赋值类型的 JSONata 表达式,例如:

表达式 1:

{
   "source" : source
}
Run Code Online (Sandbox Code Playgroud)

表达式 2:

{
  "data": {
     "email" : data.payload.Email
   }
}
Run Code Online (Sandbox Code Playgroud)

我想将以上两个表达式添加到使用script.

所以添加这两个表达式后,我应该能够得到:

var …
Run Code Online (Sandbox Code Playgroud)

javascript json transformation jsonata

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