小编ger*_*ijk的帖子

如何使用XPath选择任何深度的子元素?

假设我有这个(简化):

<form id="myform">
    <!-- some input fields -->
    <input type="submit" value="proceed"/>
</form>
Run Code Online (Sandbox Code Playgroud)

然后我可以通过XPath选择提交按钮//form[@id='myform']/input[@type='submit'].大.

但是,我的模板可能会更改,我希望在提交按钮所在的深度上保持灵活性.它可能放在一个表中,如下所示:

<form id="myform">
    <!-- some input fields -->
    <table><tr><td>
           <input type="submit" value="proceed"/>
    </td></tr></table>
</form>
Run Code Online (Sandbox Code Playgroud)

我知道我可以选择孙子的元素,但我不能选择任何深度的盛大盛大的孩子们.例如:

  • //form[@id='myform']/*/input[@type='submit'] 只选择大孩子,没有更深入的.
  • //form[@id='myform']/*/*/input[@type='submit'] 只选择曾祖母,没有更深或更少的深度.
  • //form[@id='myform']/**/input[@type='submit'] 无效.

那么,如何在不使用元素ID的情况下可靠地选择此提交按钮?

xpath

87
推荐指数
3
解决办法
10万
查看次数

Git:如何以git-log格式列出特定的预告片(页脚)?

给出以下示例git commit消息:

My commit message summary

Some more body in this message...

Signed-off-by: My name <my.name@example.com>
Issue: MYPROJ-123
Run Code Online (Sandbox Code Playgroud)

我现在可以使用最近的Git版本(2.14+)解析这些" 预告片 "(页脚中的键/值参数)git interpret-trailers --parse.这似乎也集成到git-log格式选项中,例如:

git log --format="%h %s %(trailers)"
Run Code Online (Sandbox Code Playgroud)

但是,它显示了所有预告片,包括换行符.

是否可以将其限制为单个拖车令牌的值?理想情况下,我想要完成的是git-log行,只显示Issue令牌的值:

0123abcd My commit message summary MYPROJ-123
Run Code Online (Sandbox Code Playgroud)

git git-log

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

如何“git-am”应用使用“git-format-patch --no-prefix”创建的补丁?

我有理由\xc2\xb9 使用 git-format-patch 和选项创建我的 git 提交作为补丁文件--no-prefix

\n\n

此选项更改补丁输出,以不在补丁文件的文件路径中添加 git-diff 特定的前缀a// 。b/它允许应用补丁文件等工具,patch而无需作为-p1参数传递。

\n\n

到目前为止一切都很酷。然而,我似乎无法再用 Git 本身(git-am)来实际应用它们:

\n\n
$ git am path/to/0001-patch.patch\nApplying: <commit message subject>\nerror: <path>: does not exist in index\nPatch failed at 0001\n[...]\n
Run Code Online (Sandbox Code Playgroud)\n\n

我现在如何应用它们git-am,同时保持简单的patch兼容性?

\n\n

\xc2\xb9 它允许我在 Bazel 中将其用作补丁文件,而无需自定义补丁命令,因为您需要使用patch -p1 [...].

\n

git format-patch git-am git-apply

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

如何清除ibdata1文件以及它可能怎么影响其性能?

我查看了ibdata文件,它是128 GB.我拿出每张桌子的大小,一张桌子有500万的记录,它显示了90 GB.

我截断了那个表,因为没有必要,我查看了ibdata1的大小.它仍显示128 GB.然后我拿出每张桌子的大小,然后总和只有35-38 GB.

如何在Db服务器上恢复90 GB的空间.我在red-hat Linux服务器上使用mysql和php.

我猜 - 如果我们删除DB上的任何东西它只是删除复制,但分配给它的空间不会被释放,直到我们手动执行.是这样的吗?

mysql database innodb

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

如何使用替代构建配置'pip install uwsgi'?

我正在尝试使用pip 安装uWSGI来部署Django项目:

$ pip install uwsgi
[...]
################# uWSGI configuration #################

pcre = False
kernel = Linux
malloc = libc
execinfo = False
ifaddrs = True
ssl = True
zlib = True
locking = pthread_mutex
plugin_dir = .
timer = timerfd
yaml = embedded
json = False
filemonitor = inotify
routing = False
debug = False
capabilities = False
xml = expat
event = epoll

############## end of uWSGI configuration #############
[...]
Run Code Online (Sandbox Code Playgroud)

我看到显示的构建配置中有一些我想要更改的选项.

  • ssl(在nginx中完成,我不希望uwsgi二进制文件链接到OpenSSL)
  • 对于开发机器,我想启用 …

python pip uwsgi

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

我可以在 git config 中设置推送选项(git push -o "...")吗?

Git 2.10 引入了 git Push 选项( git push -o "my string")。

许多命令行选项都是可配置的,我想知道是否也可以这样做。我无法在git-config中找到它,但也许我忽略了它。

那么,是否可以添加一组(一组)默认推送选项,以...

git push -o "r=joh.doe"
Run Code Online (Sandbox Code Playgroud)

...运行时的默认值...

git push
Run Code Online (Sandbox Code Playgroud)

上下文: 我将其与 Gerrit 一起使用,直接将更改分配给审阅者(参考文档- 使用兼容语法<push-ref>%my_string)。当上传许多更改并结对审查彼此的代码时,如果我可以在推送时将该人添加为审查者,那将会很有用。

git git-push git-config gerrit

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

为什么我不能在Dockerfile中的FROM之后再次使用构建arg?

我正在使用Docker 18.05.0~ce~3-0~ubuntu,我想将构建参数传递给FROM以及我的Dockerfile中的其他行.你会期望以下工作:

ARG FROM_IMAGE=ubuntu:bionic
FROM $FROM_IMAGE

COPY sources_list/$FROM_IMAGE /etc/apt/sources.list
Run Code Online (Sandbox Code Playgroud)

它适用于第二行(FROM),但它的行为类似于COPY行中未设置:

第1/3步:ARG FROM_IMAGE = ubuntu:仿生步骤2/3:FROM $ FROM_IMAGE ---> 8626492fecd3 [...]步骤3/3:COPY sources_list/$ {SOURCES_LIST_FILE} /etc/apt/sources.list失败复制文件:无法复制目录:mkdir /var/lib/docker/overlay2/0536b4e280ddca2fec18db9d79fa625a8be86efdbaaea5b3dbbefcdaaab3f669/merged/etc/apt/sources.list:不是目录

如果添加另一个单独的构建arg,它适用于同一COPY行:

ARG FROM_IMAGE=ubuntu:bionic
FROM $FROM_IMAGE

ARG SOURCES_LIST_FILE
COPY sources_list/${SOURCES_LIST_FILE} /etc/apt/sources.list
Run Code Online (Sandbox Code Playgroud)

步骤4/4:COPY sources_list/$ {SOURCES_LIST_FILE} /etc/apt/sources.list ---> 7f974fffe929

为什么我不能FROM_IMAGEFROM一行之前和之后使用构建arg两次?我没有找到任何记录在案的限制.

docker dockerfile docker-build

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

如何在 Django 中获得内联表单集的反向?

请参阅下面Django 文档中的此示例:

from django.db import models

class Author(models.Model):
    name = models.CharField(max_length=100)

class Book(models.Model):
    author = models.ForeignKey(Author)
    title = models.CharField(max_length=100)
Run Code Online (Sandbox Code Playgroud)

如果您想创建一个表单集,允许您编辑属于特定作者的书籍,您可以这样做:

>>> from django.forms.models import inlineformset_factory
>>> BookFormSet = inlineformset_factory(Author, Book)
>>> author = Author.objects.get(name=u'Mike Royko')
>>> formset = BookFormSet(instance=author)
Run Code Online (Sandbox Code Playgroud)

这是与 Authors to Books 的一对多关系,并提供了一种为单个作者编辑书籍的简单方法。

现在我想做相反的事情:一个用于编辑/创建作者的表单,其中包含要编辑/创建的内联书籍表单集。我怎么做?我真的更喜欢一种使用 ModelForms 来做到这一点的方法,无需创建所涉及的模型之一的实例。

例如:

添加作者表单

  • 作者姓名: [________]
  • 图书:
    • 标题: [________]
    • 标题: [________]
    • 标题: [________]
    • (添加更多)
  • [save]

注意:此时我需要没有任何 Authors 实例。

我可能在这里遗漏了一些简单的东西,而且我在此处的文档上花了太多时间。欢迎提供一些帮助!

django django-forms

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

在 Kotlin 异常块中,如何实现“else”(成功)块?

在 Python 中,我会这样做:

try:
    some_func()
except Exception:
    handle_error()
else:
    print("some_func was successful")
    do_something_else()  # exceptions not handled here, deliberately
finally:
    print("this will be printed in any case")
Run Code Online (Sandbox Code Playgroud)

我觉得这读起来非常优雅;else只有在没有抛出异常的情况下才会到达该块。

在 Kotlin 中如何做到这一点?我应该声明一个局部变量并在块下面检查它吗?

try {
    some_func()
    // do_something_else() cannot be put here, because I don't want exceptions
    // to be handled the same as for the statement above.
} catch (e: Exception) {
    handle_error()
} finally {
    // reached in any case
}
// how to handle 'else' elegantly?
Run Code Online (Sandbox Code Playgroud)

我找到了 …

exception kotlin

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