我不断收到此警告,无论如何似乎都无法摆脱它(除了压制它):
C:\...\site-packages\sqlalchemy\sql\elements.py:4390: SAWarning:
Textual column expression 'column_name' should be explicitly declared
with text('column_name'), or use column('column_name') for more
specificity
if guess_is_literal else "column"
Run Code Online (Sandbox Code Playgroud)
我在一个元数据上下文中构建了一个 Column() 对象(列名 + 数据类型)列表,然后在另一个元数据上下文中使用这个列表创建一个表。虽然这有效,但它确实给出了这个警告。我试过了:
无论如何,我仍然收到警告。
以下是 Python 代码的一些片段:
for col_name in self.cols_source:
print(meta.tables[self.table_name].c[col_name].name)
print(type(meta.tables[self.table_name].c[col_name].name)) #quotedname
print(type(column(meta.tables[self.table_name].c[col_name].name))) #ColumnClause
print(type(text(meta.tables[self.table_name].c[col_name].name))) #TextClause
print(type(str(meta.tables[self.table_name].c[col_name].name))) #Str
#source_query_cols.append( Column( name=meta.tables[self.table_name].c[col_name].name, type_=meta.tables[self.table_name].c[col_name].type ))
#source_query_cols.append( Column( name=column(meta.tables[self.table_name].c[col_name].name), type_=meta.tables[self.table_name].c[col_name].type ))
#source_query_cols.append( Column( name=text(meta.tables[self.table_name].c[col_name].name), type_=meta.tables[self.table_name].c[col_name].type ))
source_query_cols.append( Column( name=str(meta.tables[self.table_name].c[col_name].name), type_=meta.tables[self.table_name].c[col_name].type ))
Run Code Online (Sandbox Code Playgroud) 可选链接在 Node 14.17 上的 Vue.js (v2) 项目中不起作用。
const adventurer = {
name: 'Alice',
cat: {
name: 'Dinah'
}
};
const dogName = adventurer.dog?.name;
console.log(dogName);
// expected output: undefined
console.log(adventurer.someNonExistentMethod?.());
// expected output: undefined
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
ERROR Failed to compile with 1 error 11:04:50
error in ./src/components/Thing.vue?vue&type=script&lang=js&
Module parse failed: Unexpected token (497:39)
File was processed with these loaders:
* ./node_modules/cache-loader/dist/cjs.js
* ./node_modules/vue-loader/lib/index.js
You may need an additional loader to handle the result of these loaders.
| }
| };
> const …Run Code Online (Sandbox Code Playgroud) 我想删除 Vue-Router 中以前的历史记录条目,这可能吗?该解决方案必须在 Vue-Router 4.x 中工作,最好也能在 3.x 中工作。
我在这里实现的场景是用户执行以下操作:
pageA -> pageA:edit -> pageB
Run Code Online (Sandbox Code Playgroud)
当在 pageB 上点击“返回”时,我想转到 pageA(常规,非编辑)。
我知道我可以不推送页面A:edit 页面的历史记录,而是简单地进行替换。然而,感觉更自然的是,当返回 A:edit 页面时,您将返回到常规非编辑页面(beforeUpdate 路由防护中已经检查了更改,因此已涵盖)。
我知道Inkscape没有拼合功能。但。我的 svg 文件中有三个对象,我想将它们全部合并为一个。它是对 Material Design Icon 目录的贡献,因此它必须是单路径 SVG。
然而,当我“联合”对象时,两个内部对象变得更薄。如果我“组合”它们,外部对象就会变得更胖。认为它可能与描边和填充有关,但修补这些并不会改变任何东西。
是否有一个函数可以将任何可见的东西转换为一种形状?
胡安乔建议做“描边到路径”,这在尺寸现在保持相同的意义上有效。但之后我无法将背景(填充?)恢复到外环上:
这是原始的 SVG:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
width="24"
height="24"
viewBox="0 0 24 24"
id="svg4"
sodipodi:docname="pentagram-circle-outline.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
<metadata
id="metadata10">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs8" />
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1722"
inkscape:window-height="999"
id="namedview6"
showgrid="false"
inkscape:zoom="27.812867"
inkscape:cx="12.701976"
inkscape:cy="11.744741"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="svg4" />
<path
d="M 12 2 C …Run Code Online (Sandbox Code Playgroud) 我按照https://packaging.python.org/tutorials/packaging-projects/上的说明创建了一个示例包。
但是,在安装时,它只会在 Python 的 site_packages 文件夹中创建一个 testvansjoerd-0.0.2.dist-info 文件夹。因此在做一个错误时给我一个错误import testvansjoerd
示例包:https : //test.pypi.org/project/testvansjoerd/
我安装使用 python -m pip -v install --index-url https://test.pypi.org/simple/ testvansjoerd==0.0.2
日志输出:
Config variable 'Py_DEBUG' is unset, Python ABI tag may be incorrect
Config variable 'WITH_PYMALLOC' is unset, Python ABI tag may be incorrect
Created temporary directory: C:\Users\Sjoerd\AppData\Local\Temp\pip-ephem-wheel-cache-ey0faien
Created temporary directory: C:\Users\Sjoerd\AppData\Local\Temp\pip-req-tracker-ljdapjrw
Created requirements tracker 'C:\\Users\\Sjoerd\\AppData\\Local\\Temp\\pip-req-tracker-ljdapjrw'
Created temporary directory: C:\Users\Sjoerd\AppData\Local\Temp\pip-install-qi420ita
Looking in indexes: https://test.pypi.org/simple/
Collecting testvansjoerd==0.0.2
1 location(s) to search for versions of testvansjoerd:
* https://test.pypi.org/simple/testvansjoerd/ …Run Code Online (Sandbox Code Playgroud) 是否有一个函数,无论是在 Javascript 还是 Lodash 中,我可以用另一个对象的值“更新”一个对象,但不添加新键?
var foo = { 'a': 0, 'b': 1 }
var bar = { 'b': 2, 'c': 3 }
Run Code Online (Sandbox Code Playgroud)
类似于 update(foo, bar),覆盖(“更新”)任何现有的键,但不添加不存在的键:
{ 'a': 0, 'b': 2 }
Run Code Online (Sandbox Code Playgroud)
在 StackOverflow 上几乎肯定有类似的问题,但我找不到它。
我有一个 v-dialog,它有一个帮助图标,单击该图标时,会在 v-dialog(父 v-card)框上放置一个 v-overlay 以提供帮助文本。为了将覆盖层仅定位在 v-dialog 上而不是整个应用程序上,我设置了absolute 属性。
<v-dialog v-model="dialog" max-width="500px">
<v-card>
<v-overlay absolute :value="olyHelp" opacity="1">
<v-card @click="olyHelp=false" width="100%" height="100%">
<p>XXXX</p>
</v-card>
</v-overlay>
<v-card-title class="d-flex justify-space-between">
<v-btn class="align-baseline" icon small @click="olyHelp=true"><v-icon small>mdi-help</v-icon></v-btn>
</v-card-title>
<v-card-text>
Regular dialog stuff
</v-card-text>
</v-card>
</v-dialog>
Run Code Online (Sandbox Code Playgroud)
覆盖层内的 v 卡在覆盖层内居中,宽度和高度将被忽略。我尝试在其上设置所有不同的 css 位置,但我似乎无法让它填充整个覆盖/对话框(父 v 卡)空间。
例子:
我需要让 v-card 填满父 v-card/v-overlay 的整个宽度和高度
如何为 Vue.JS PWA 应用程序设置 Android 底部导航栏颜色?当我设置 时,顶部地址栏会正确更改颜色themeColor,但导航区域仍保持全白色(#fff)。
我已经尝试过:
在manifest.json中:
{
"start_url": "/.",
"display": "standalone",
"background_color": "#000000",
"theme_color": "#000000"
}
Run Code Online (Sandbox Code Playgroud)
在 vue.config.js 中:
module.exports = {
pwa: {
workboxPluginMode: 'InjectManifest',
workboxOptions: {
swSrc: 'public/service-worker.js',
exclude: [
/_redirects/,
/\.map$/,
/manifest\.json$/
],
},
start_url: '/.',
display: 'standalone',
background_color: '#000000',
themeColor: '#000000',
msTileColor: '#000000',
backgroundColor: '#000000',
theme_color: '#000000'
}
}
Run Code Online (Sandbox Code Playgroud)
类似于如何在 PWA 中更改 Android 导航栏颜色?,除了发帖者改变了他的问题按钮的颜色。
我认为 vue.config.js 中的 PWA 设置会覆盖/覆盖清单。但无论如何,我迄今为止无法设置底部导航区域的颜色。在黑暗模式下有点烦人。
我有一个基于 D-Bus 事件执行操作的 Python 脚本,其简化版本:
import dbus
from dbus.mainloop.glib import DBusGMainLoop
import gobject
DBusGMainLoop(set_as_default=True)
bus = dbus.SystemBus()
# Initialize a main loop
mainloop = gobject.MainLoop()
bus.add_signal_receiver(cb_udisk_dev_add, signal_name='DeviceAdded', dbus_interface="org.freedesktop.UDisks")
bus.add_signal_receiver(cb_udisk_dev_rem, signal_name='DeviceRemoved', dbus_interface="org.freedesktop.UDisks")
mainloop.run()
Run Code Online (Sandbox Code Playgroud)
这将调用 cb_udisk_dev_add 和 -rem 回调函数。现在我想要一个定时回调函数,我喜欢调用它,比如每 5 分钟调用一次。
看来 mainloop.run() 是一个被阻止的函数,所以我想我需要向主循环添加一个计时器......?
我尝试实现一些定期执行的函数: Executing periodal actions in Python ,但它们也都是阻塞的,所以 mainloop.run() 不会被执行。
有什么建议么?
为什么这个装饰策略被认为是坏的?(..或者是它!?)
class User(object):
def __init__(self):
self.thing = 5
def __atomic_rate_change(fn):
def wrapper(self,*args,**kwargs):
print "start magic"
self.thing += 1
fn(self,*args,**kwargs)
print "end magic"
return wrapper
@__atomic_rate_change
def foo(self,add):
print self.__atomic_rate_change # <bound method User.__atomic_rate_change of <__main__.User object at 0x6ffffe1ef50>>
self.thing += add
print "normal call {0}".format(self.thing)
test = User()
test.foo(1)
Run Code Online (Sandbox Code Playgroud)
这有效.但是,根据下面的资源,这是不好的做法.理由是:
[...]这种方法存在一个主要缺陷:atomic_rating_change成为User类的实例方法.这没有任何意义.除此之外,它甚至不能作为一种方法:如果你调用它,装饰参数将被用作self.
https://medium.com/@vadimpushtaev/decorator-inside-python-class-1e74d23107f6
我不明白为什么atomic_rate_change是一个实例方法是一个问题/错误/错误.我只是打算在类中使用装饰器.也许在这种情况下它没关系?
在对 pdf-lib 问题进行故障排除时,我看到了这个,对我来说不熟悉的符号:
{ e => e }
Run Code Online (Sandbox Code Playgroud)
在下面的屏幕截图中,我看到我认为是名为“catalog”的对象的名为“dict”的属性。属性“dict”是地图数据结构。
双括号 [[Entries]] 符号是我认为表示 javascript 内部属性的符号,并且我认为可以将其理解为类似于该map.entries()方法。因此,我希望我在下面看到的是映射条目的输出,即映射的密钥对值。
现在,这就是事情对我来说变得模糊的地方。这张地图的键似乎是数值 0-5,它的值是前面提到的{ e => e}。大括号让人联想到对象和函数,里面似乎有一个箭头函数……?
截屏:
我想增加 Vuetify v-autocomplete 的高度,它固定为 304px(可能是计算值,YMMV)。
<v-autocomplete
class="flex-grow-0 ml-16 mr-6 largecontent"
prepend-inner-icon="mdi-magnify"
v-model="select"
:items="items"
item-text="name"
item-value="id"
:search-input.sync="search"
hide-no-data
label="Search anything (press /)"
>
<template #item="{ item }">
<v-list-item to="item.route">
<v-list-item-content>
<v-list-item-title v-text="item.name"/>
<div
v-if="item.desc"
v-html="item.desc"
/>
</v-list-item-content>
</v-list-item>
</template>
<v-autocomplete/>
Run Code Online (Sandbox Code Playgroud)
这两者都有效,但会将样式应用于所有v-autocomplete,这是我们不想要的:
<style>
.v-autocomplete__content {
max-height: 600px !important;
}
</style>
<style>
.v_menu__content {
max-height: 600px !important;
}
</style>
Run Code Online (Sandbox Code Playgroud)
所以,我想扩大范围
<style scoped>
.v-autocomplete__content {
max-height: 600px !important;
}
</style>
Run Code Online (Sandbox Code Playgroud)
或者向我的全局 css 文件添加一个条目,例如:
.largecontent.v-autocomplete__content {
max-height: 600px !important;
}
Run Code Online (Sandbox Code Playgroud)
但似乎没有任何作用,也尝试了 Vuetify 深度选择器,但它们似乎只在存在父子层次结构时才起作用,而这里的情况并非如此。
不使用 ORM,如何将 NOT IN 子查询附加到 SELECT 查询?
WHERE id NOT IN ( SELECT id FROM table_X )
Run Code Online (Sandbox Code Playgroud)
使用Python:
s = select([batch_table])
Run Code Online (Sandbox Code Playgroud)
我总是可以恢复到原始 sql,但这将是采取简单的方法;-)。
python ×5
javascript ×3
css ×2
python-3.x ×2
sqlalchemy ×2
vuetify.js ×2
android ×1
gobject ×1
inkscape ×1
python-2.7 ×1
svg ×1
timer ×1
vue-router ×1
vue.js ×1
vuejs2 ×1