小编use*_*003的帖子

SQL在表的两个副本之间留下了自我连接与WHERE子句的依赖关系

以下两句话:

hello there
bye!
Run Code Online (Sandbox Code Playgroud)

在表sentence_words中表示:

WORD_ID  SENTENCE_ID    WORD    WORD_NUMBER
10       1              hello   1
11       1              there   2
12       2              bye!    1
Run Code Online (Sandbox Code Playgroud)

我想做一个外连接查询,给我结果:

WORD1      WORD2
hello      there
bye!       NULL
Run Code Online (Sandbox Code Playgroud)

请注意,我可能想在句子的中间开始,所以我不能假设word2有word_number = 2.如果我选择my_start_number = 2那么查询应该给我:

WORD1   WORD2
there   NULL
Run Code Online (Sandbox Code Playgroud)

我试过了:

(my_start_number = 1)

select  s1.word word1, s2.word word2
from sentence_words s1
left join sentence_words s2
on s1.sentence_id = s2.sentence_id
where s1.word_number = my_start_number
 and (s2.word_number = s1.word_number +1 or s2.word_number is null);
Run Code Online (Sandbox Code Playgroud)

如果句子中有两个单词,那只会给我一个结果.我不知道该怎么做并不复杂.

sql outer-join

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

Django表单:如果用户将字段留空,则为默认值

在Django Forms上,如果用户将字段留空,如何为字段指定默认值?Initial设置初始值,但用户可以删除它.

django django-forms

9
推荐指数
2
解决办法
5244
查看次数

chrome扩展存储:设置/获取值

尝试使用本地存储在Chrome扩展程序中设置和获取值.不知道我做了什么,但它不再工作了

在清单中我有:

   "permissions": [
      "tabs", "http://*/*", "https://*/*", "storage"
    ],
Run Code Online (Sandbox Code Playgroud)

这是完整的js,它设置一个值,然后尝试读取它:

 chrome.storage.local.set({'userid': "foo"}, function (result) {
    chrome.storage.local.get('userid', function (result) {
        alert(userid.result);
   });
});
Run Code Online (Sandbox Code Playgroud)

警报说"未定义",而不是预期的"foo".

当我转到某个页面时执行js,该页面在清单中为"content_scripts"指定.

local-storage google-chrome-extension

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

Python pytz:不存在的时间得到AmbiguousTimeError,而不是NonExistentTimeError

如何判断当地时间是否不存在?我正在尝试使用pytz,但它会抛出一个AmbiguousTimeError,而不是NonExistentTimeError.

由于夏令时,2013-3-31 02:30将永远不会在哥本哈根发生.

local_tz = timezone('Europe/Copenhagen')
try:
    non_e = local_tz.localize(datetime.datetime(2013, 3, 31, 2, 30), is_dst = None) 
except pytz.AmbiguousTimeError:
    print "AmbiguousTimeError"
Run Code Online (Sandbox Code Playgroud)

它转到异常处理程序.我试过了:

 except pytz.NonExistentTimeError: #'module' object has no attribute 'NonExistentTimeError'
 except pytz.exceptions.NonExistentTimeError: #'module' object has no attribute 'exceptions'
Run Code Online (Sandbox Code Playgroud)

用户通过表单向我提供日期和时间.这些是在当地时间,我需要看看日期和时间是否正常.

我正在使用Django USE_TZ = True,但我认为这不重要.

python timezone pytz

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

推迟加载js时$(document).load()和$(document).ready()的顺序

在我更改所有代码之前,我只想验证我需要的代码.

我在ready()函数中有几个内联js和jquery函数:

$(document).ready(function(){ do_something(); ...
Run Code Online (Sandbox Code Playgroud)

其中许多函数依赖于外部js文档中包含的其他函数.它们还使用外部样式表中定义的类.

现在我刚刚更改了外部js和css的加载,以便延迟(按照Google https://developers.google.com/speed/docs/best-practices/payload?hl=zh-CN#DeferLoadingJS的建议):

 if (window.addEventListener)
    window.addEventListener("load", downloadJSAtOnload, false);
else if (window.attachEvent)
    window.attachEvent("onload", downloadJSAtOnload);
else window.onload = downloadJSAtOnload;
Run Code Online (Sandbox Code Playgroud)

这样,在开始加载JS之前,页面将完全呈现,包括所有图像.

这很好用.但是,我想知道为什么以及它是否会永远.是不是在onLoad之前执行了$(document).ready()?在执行$(document).ready时,我不会冒没有定义必要函数的风险吗?

那么,我是否需要将每个$(document).ready更改为$(document).load()?或者,至少其中一些?但是然后首先执行哪个onLoad()?加载外部js(在标题中定义)或内联js的那个?通过改变准备加载我会失去什么?例如,当用户点击元素时,我可能会冒一个事件未附加到元素的风险吗?

顺便说一句,jquery api不会被推迟,因为当我去执行其他代码时会导致问题.

jquery rendering loading

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

XMLHttpRequest multipart/form-data:多部分中的边界无效

我通过XMLHttpRequest发送帖子数据:

var xmlHttp=new XMLHttpRequest();
xmlHttp.open("POST", domain, true);
xmlHttp.setRequestHeader("Content-type","multipart/form-data");
var formData = new FormData();  
formData.append("data", data_json_string);
xmlHttp.send(formData);
Run Code Online (Sandbox Code Playgroud)

在Python中,如果我尝试获取POST(或FILES或任何)数据,我会收到错误:

MultiPartParserError: Invalid boundary in multipart: None
Run Code Online (Sandbox Code Playgroud)

这可能永远不会工作?我是否真的需要将表单体创建为单个字符串,我在其中循环参数并在每个参数之前和之后放置一个边界字符串?如果是这样,那应该是什么样的?如何从我的POST中获取它?或者有一种更简单的方法.我环顾四周,对此没有太多了解.

顺便说一下,我正在使用"multipart/form-data",因为我的字符串数据非常长,这是一种更快的发送方式.当我创建表单并发布它,将其定位到iframe时,它对我有用.但在这里我更喜欢xmlHttp.

javascript python xmlhttprequest

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

Android 应用程序:无法保存照片。相机无权保存到此位置

我有一个用户无法在我的 Android 应用程序中使用相机,即使她似乎拥有所有正确的权限。

她使用的是Google Pixel 6 Pro,Android 12 Build/SD1A.210817.037

她已删除并重新安装了该应用程序。她已删除与该应用程序关联的存储和缓存。她可以将相机用于其他应用程序。她正在使用默认的相机应用程序。

没有其他人抱怨这个问题,但她正在使用最近的构建更新,所以也许她只是第一个看到它并告诉我的人。

弹出的错误消息显示:

无法保存照片。相机无权保存到此位置。

在她的“设置”应用程序中,对于应用程序权限:

  • 相机
  • 文件和媒体
  • “没有拒绝任何权限”

在她的“设置”应用程序中,对于所有权限,:

  • 相机:拍照和录像
  • 文件和媒体:读取共享媒体的内容,修改或删除共享媒体的内容

应用程序权限:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<uses-feature
    android:name="android.hardware.camera"
    android:required="false" />
<uses-feature
    android:name="android.hardware.camera.autofocus"
    android:required="false" />
Run Code Online (Sandbox Code Playgroud)

该应用程序使用网络视图并从标准 HTML 表单启动相机。这是标准的,并自动让用户选择使用相机或文件。然后图像通常通过表单发送到我的服务器并保存在那里。

<form action="upload/" method="post" enctype="multipart/form-data" >
      <input type="file" accept="image/*" name="image">
      <input type="submit">
</form>
Run Code Online (Sandbox Code Playgroud)

如果用户选择文件,则可以上传图像,但如果选择相机选项,则不能上传图像。我不确定错误消息是在用相机拍照之前还是之后弹出的。

应用程序代码:

private int MY_PERMISSIONS_REQUEST_CAMERA = 1;

public boolean onShowFileChooser(WebView webView, ValueCallback<Uri[]> filePathCallback, WebChromeClient.FileChooserParams fileChooserParams) {
        uriArrayCallback = filePathCallback; …
Run Code Online (Sandbox Code Playgroud)

android android-camera android-permissions

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

DOM/Javascript:标记后获取文本

如何获取html文档中标记后面的"那里"文本:

<p><a>hello</a>there</p>
Run Code Online (Sandbox Code Playgroud)

我看到有一种方法可以用xpath做到这一点:

从下一个标签获取文本

但我没有使用xpath,我希望不必为此而开始.我意识到我可以获得p标签内的所有文本,但我想获得"那里"文本,以及知道它与p和标签的关系.它似乎不是任何人的孩子或兄弟姐妹.(你可以假设我可以获得任何其他元素/节点,因此它可以相对于那些.)每个DOM教程似乎都忽略了文本可以在标记之外发生的事实.

谢谢.

javascript dom

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

Python,转换4字节字符以避免MySQL错误"字符串值不正确:"

我需要将(在Python中)一个4字节的char转换为其他字符.这是将其插入到我的UTF-8 mysql数据库没有得到一个错误,如:"不正确的字符串值:在第1行'\ XF0\x9F\X94\x8E’列'线’"

通过向mysql插入4字节unicode引发的警告显示这样做:

>>> import re
>>> highpoints = re.compile(u'[\U00010000-\U0010ffff]')
>>> example = u'Some example text with a sleepy face: \U0001f62a'
>>> highpoints.sub(u'', example)
u'Some example text with a sleepy face: '
Run Code Online (Sandbox Code Playgroud)

但是,我得到了与评论中的用户相同的错误,"...字符范围很差.."这显然是因为我的Python是UCS-2(而不是UCS-4)版本.但后来我不知道该怎么做呢?

python mysql utf-8 character-encoding python-unicode

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

Python PIL,在调整大小和保存时保持质量

我有一个大图像,我在PIL中调整大小,使其宽250像素.这是它将在我的网站上显示的宽度.

但是,分辨率非常糟糕.我发现它已经将dpi从180改为96.如果我在像Windows Paint这样的程序中调整图像大小,那么它会保持180 dpi.这个Paint-resized图像在我的网站上看起来好多了.(调整大小的图像为40kb,而PIL调整大小的图像为16kb)

如何保持dpi(或将其设置为在网站上看起来不错的最大值)

我使用PIL调整大小:

image = image.resize((new_width, new_height), Image.ANTIALIAS)
image.save(filepath)
Run Code Online (Sandbox Code Playgroud)

我试过了:

dpi = image.info['dpi']  # (180, 180)
image.save(filepath, dpi = dpi) 
Run Code Online (Sandbox Code Playgroud)

但它没有任何区别.dpi是180,但分辨率仍然很差.我猜测在调整大小期间需要设置dpi吗?

编辑:

问题似乎是节约,而不是调整大小.即使我从Paint-resized图像开始(因此不会在PIL中调整图像大小),它仍然会将其保存为96 dpi(16kb)的粗糙质量保持原样.

python python-imaging-library

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