小编Csa*_*oth的帖子

删除受保护的外键下自动创建的模型

class Basket:
    name = models.CharField(max_length=50, blank=True, null=True)

class Apple:
    name = models.CharField(max_length=50, blank=True, null=True)
    basket = models.ForeignKey(Basket, on_delete=models.PROTECT)
Run Code Online (Sandbox Code Playgroud)

...

myapple = new Apple(name="my")
myapple.save()
Run Code Online (Sandbox Code Playgroud)

...

auto_created_basket = myapple.basket
myapple.basket = existing_basket
auto_created_basket.delete()
Run Code Online (Sandbox Code Playgroud)

我尝试将 auto_created_basket 换成另一个,但当我尝试删除它时出现错误。

"Cannot delete some instances of model 'Basket' because they are referenced through a protected foreign key: 'Apple.basket'", [<Apple: My apple>])

python django foreign-key-relationship

7
推荐指数
2
解决办法
8792
查看次数

DRF - 是否可以将URL中的多个过滤器参数与某种OR逻辑符号组合在一起

我使用Django REST Framework构建了一个REST端点.

class PersonFilter(django_filters.FilterSet):
    id = django_filters.NumberFilter(name="id", lookup_type="gt")
    first_name = django_filters.CharFilter(name="first_name", lookup_type="icontains")
    last_name = django_filters.CharFilter(name="last_name", lookup_type="icontains")

class Meta:
    model = Person
    fields = ('id', 'first_name', 'last_name', 'last_mod')

class PersonModelViewSet(viewsets.ReadOnlyModelViewSet):
    queryset = Person.objects.none()
    filter_backends = (filters.DjangoFilterBackend, filters.SearchFilter, filters.OrderingFilter)
    pagination_class = StandardResultsSetPagination
    ordering_fields = ('id', 'first_name', 'last_name', 'last_mod')
    ordering = ('last_mod', 'id')
    filter_class = PersonFilter
Run Code Online (Sandbox Code Playgroud)

现在,如果我提出这样的请求:

/api/rest/v1/Person?first_name=foo&last_name=foo&page_size=10
Run Code Online (Sandbox Code Playgroud)

这仅返回名字和姓氏都包含"foo"的对象.我想返回名字中包含"foo"或姓氏包含"foo"的那些对象.

我想知道URL参数中是否有可用的符号,这意味着过滤器之间的逻辑或关系.

一种解决方法是向端点发出两个单独的AJAX查询,但这需要额外的工作来统一结果.

python django url django-rest-framework

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

npm shrinkwrap中的fsevents(由chokidar引入)会导致Windows上的构建失败

OSX仅fsevents列在其中,npm shrinkwrap因为它被拉入chokidar.我们的产品是基于Linux的,并没有造成任何麻烦,显然OSX开发人员也很好,但它打破npm install了我的Win x64环境.

我该如何解决这个问题?

C:\Users\User\Documents\splive>npm install
(node:2888) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.

> fsevents@1.0.8 install C:\Users\User\Documents\splive\node_modules\fsevents
> node-pre-gyp install --fallback-to-build

node-pre-gyp ERR! Tried to download: https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.0.8/fse-v1.0.8-node-v48-win32-x64.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for fsevents@1.0.8 and node@6.3.0 (node-v48 ABI) (falling back to source compile with node-gyp)
Traceback (most recent call last):
  File "C:\Users\User\node_modules\npm\node_modules\node-gyp\gyp\gyp_main.py", line …
Run Code Online (Sandbox Code Playgroud)

fsevents node.js npm npm-shrinkwrap windows-10-desktop

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

在Visual Studio立即窗口中无法使用WinDbg和SOS

我正在关注本教程:链接.在第8步,当我.load sos在立即窗口中说,它只是呕吐expected expression.

系统:Win 7 x64,Visual Studio 2012 Premium.我已经安装了适用于Windows的调试工具(x64)11/14/2012,现在我安装了X64调试器和工具.我有适用于Windows 7的Windows SDK(7.1).WinDbg.exe位于c:\ Program Files\Debugging Tools for Windows(x64)\中,我可以从开始菜单启动它.但是我找不到sos.dll,它应该随Windows调试工具(x64)一起提供.

我怎样才能做到这一点?

奖金问题:{,,kernel32}_LoadLibraryExW@12在第4步不起作用,我使用{,,kernel32}LoadLibraryExW,但后来我无法弄清楚加载的dll名称在哪里.我正在寻找寄存器.

windbg immediate-window sos visual-studio-2012

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

以ISO格式打印日期时间,不带毫秒

我正在尝试在API中序列化datetime,但我不想要毫秒.我想要的是:https://en.wikipedia.org/wiki/ISO_8601 -"2015-09-14T17:51:31+00:00"

tz = pytz.timezone('Asia/Taipei')
dt = datetime.datetime.now()
loc_dt = tz.localize(dt)
Run Code Online (Sandbox Code Playgroud)

试试A:

loc_dt.isoformat()
>> '2015-09-17T10:46:15.767000+08:00'
Run Code Online (Sandbox Code Playgroud)

试试B:

loc_dt.strftime("%Y-%m-%dT%H:%M:%S%z")
>> '2015-09-17T10:46:15+0800'
Run Code Online (Sandbox Code Playgroud)

后者几乎是完美的,除了在时区部分缺少冒号.如何在没有字符串操作的情况下解决此问题(删除毫秒或添加冒号)?

python timezone datetime iso

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

为什么 webpack 开发服务器服务器 CSS 捆绑了 text/html MIME 类型?

因为text/html在我的开发系统上由 webpack 开发服务器提供MIME 类型的CSS ,Chrome 拒绝加载它们:

Refused to apply style from 'http://localhost:3000/assets/bundles/baseRequirements-a07aa....css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

我的 webpack 配置:

webpack.base.config.js

const path = require('path')
const entries = require('./entries')
const BundleTracker = require('webpack-bundle-tracker')
const ExtractTextPlugin = require('extract-text-webpack-plugin')
const {VueLoaderPlugin} = require('vue-loader')

module.exports = {
  entry: entries,

  output: {
    filename: '[name]-[hash].bundle.js',
    path: path.resolve('./assets/dist/')
  },

  plugins: [
    new BundleTracker({filename: './assets/webpack-stats.json'}),
    new VueLoaderPlugin(),
    new ExtractTextPlugin({
      filename: '[name]-[hash].css',
      allChunks: …
Run Code Online (Sandbox Code Playgroud)

css sass npm webpack webpack-dev-server

5
推荐指数
0
解决办法
2154
查看次数

如何将 Object 转换为 bytearray(任何对象转换为 List&lt;int&gt;)

如何将对象转换为列表(数组字节) 我有 MyClass 类的实例(某个对象),我想从该对象获取字节。如何实现这一点?

代码:

class MyClass {}

var myClass = MyClass()

List<int> getBytesFromObject(Object object) {
    // ??? what here should be ???
}

// so I can use it like:
List<int> bytes = getBytesFromObject(myClass)
Run Code Online (Sandbox Code Playgroud)

arrays serialization object converters dart

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

有没有办法将 EncryptedSharedPreference 与 PreferenceScreen 集成?

我是安卓开发的新手。目前,我想加密一个名为 Shared Preference 的自定义并与 PreferenceScreen 集成,但未能这样做。我正在使用依赖项:

  1. androidx.security:security-crypto:1.0.0-alpha02 [EncryptedSharedPreference]
  2. androidx.preference:preference:1.1.0 [PreferenceScreen]

我曾尝试研究有关这两个功能集成的相关信息,但没有找到相关信息。

从我的测试中,我有一个现有的加密共享首选项并测试了以下 API:

getPreferenceManager().setSharedPreferencesName("MyShared"); //MyShared Is custom named preference.
Run Code Online (Sandbox Code Playgroud)

但它最终以普通值保存了偏好。

我的问题:

  1. 在当前阶段是否可以将这两个功能集成在一起?
  2. PreferenceScreen 是否提供我不知道的加密功能?
  3. 如果我坚持使用 EncryptedSharedPreference,我创建一个看起来像首选项屏幕的自定义活动会更好吗?

java sharedpreferences preferencescreen android-jetpack-security

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

如何在flutter中创建HTTP服务器应用程序?

我在 Flutter 中工作,我必须创建一个 Flutter 应用程序来创建 HTTP 服务器,并为我们的本地手机存储提供服务。我无法找到任何与在 flutter 中创建 HTTP 服务器相关的 Flutter 插件,这是我在 Play Store 中找到的示例应用程序,它实现了 HTTPS 服务器:

该应用程序的屏幕截图

以下是应用程序如何通过 HTML 页面公开手机存储空间:

在此输入图像描述

我如何在 Flutter 中创建这个应用程序?请建议任何插件。

android httpserver flutter

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

如何通过 iOS Web 应用程序与蓝牙设备配对?

当我查看https://caniuse.com/mdn-api_bluetooth时,它表明 Safari 和 iOS Safari 都不支持 Web 蓝牙,并且由于 Apple 政策,所有 iOS 浏览器基本上也都是 Safari,因此这意味着没有一个浏览器可以支持 Web 蓝牙。即使它们通常打开网络蓝牙,也可以进行救援。

\n

然而,某些新闻媒体最近报道称,蓝牙游戏控制器可以在 iOS 上配对以用于游戏流媒体网络应用程序:https ://www.extremetech.com/gaming/317578-nvidia-google-to-support-cloud-gaming-on-iphone-通过网络应用程序

\n
\n

您可以将 Xbox、PS4 或移动蓝牙控制器与设备配对。网络应用程序也有触摸控制,但它们不能在所有游戏中使用。

\n
\n

这在技术上怎么可能?我有一个与低功耗蓝牙设备通信的本机移动应用程序,如果 Apple 平台也能被覆盖,我会将其移动到网络上。有文章报道称,苹果以隐私为由明确避免使用网络蓝牙:https://www.zdnet.com/article/apple-declined-to-implement-16-web-apis-in-safari-due-to-privacy-concerns/

\n

bluetooth ios bluetooth-lowenergy progressive-web-apps web-bluetooth

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