小编dav*_*ler的帖子

检查具有特定args的resque作业是否在队列中待处理

例如,我就这样排队了

Resque.enqueue(MyJob, user.id)
Run Code Online (Sandbox Code Playgroud)

在使用相同的作业进入另一个作业之前,user.id我想检查队列中是否已存在具有该用户ID的作业.

我希望有一些语法:

Resque.queue('MyQueue').has_pending_job(MyJob, user.id)
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails resque ruby-on-rails-4

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

Web音频API获取<audio>元素的AudioBuffer

我有一个音频元素

var audioSrc = 'https://mfbx9da4.github.io/assets/audio/dope-drum-loop_C_major.wav'
var audio = document.createElement('audio')
audio.src = audioSrc
Run Code Online (Sandbox Code Playgroud)

我需要AudioBuffer 进行节拍检测,因此在加载音频时尝试访问缓冲区:

audio.oncanplaythrough = () => {
  console.info('loaded');
  var source = context.createMediaElementSource(audio);
  source.connect(context.destination);
  console.info('source.buffer', source.buffer);
  source.start()
}
Run Code Online (Sandbox Code Playgroud)

但是,以上代码片段日志

> loaded
> source.buffer undefined
Run Code Online (Sandbox Code Playgroud)

javascript audio html5-audio web-audio-api

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

在 Latin1 数据库中存储 UTF8 文本有什么后果?

我有一个默认字符集的 mysql 数据库 latin1

mysql>  SELECT SCHEMA_NAME 'database', default_character_set_name 'charset', DEFAULT_COLLATION_NAME 'collation' FROM information_schema.SCHEMATA ;
+--------------------+---------+-------------------+
| database           | charset | collation         |
+--------------------+---------+-------------------+
| dbname12345        | latin1  | latin1_swedish_ci |
Run Code Online (Sandbox Code Playgroud)

驱动程序(在本例中为 knex + node-mysql)配置为charset: 'utf8'. 因此,驱动程序以 UTF8 编码、存储和检索文本。

但是,mysql认为数据在latin1. 像这样混合字符集的后果是什么?

mysql utf-8 character-encoding

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

AMP整页封面背景视频

我是AMP开发的新手,无法绕过布局.我正在尝试创建整页封面背景视频.

我已尝试过变种layout='responsive'但我不知道页面加载前的页面高度和AFAIK我无法在页面加载后动态更新widthheight动态.我基本上是在模仿object-fitCSS道具.object-fit: cover显然是由AMP CSS支持的.

我尝试object-fit在下面的代码段中使用,但无济于事.在代码段中,使用div video中的普通HTML5 标记显示预期的行为expected.

<!doctype html>
<html ?>
<head>
  <meta charset="utf-8">
  <title>My AMP Page</title>
  <link rel="canonical" href="self.html" />
  <meta name="viewport" content="width=device-width,minimum-scale=1">
  <style amp-boilerplate>body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}</style><noscript><style amp-boilerplate>body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}</style></noscript>
  <script async src="https://cdn.ampproject.org/v0.js"></script>
  <script async custom-element="amp-video" src="https://cdn.ampproject.org/v0/amp-video-0.1.js"></script>
  <style amp-custom> …
Run Code Online (Sandbox Code Playgroud)

css amp-html

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

何时使用多列索引?

我有下表约1000万行

CREATE TABLE "autocomplete_books"
(
    id uuid PRIMARY KEY DEFAULT uuid_generate_v4 (),
    author_id uuid NOT NULL REFERENCES "author"(id) ON DELETE CASCADE,
    language VARCHAR(30) NOT NULL,
    name VARCHAR(100) NOT NULL,
    importance_rank SMALLINT NOT NULL DEFAULT 1
);
Run Code Online (Sandbox Code Playgroud)

我有以下查询

SELECT DISTINCT ON (author_id)
    author_id,
    similarity(name, $1) as score,
    language, name, importance_rank
FROM
    "autocomplete_books"
WHERE
    $1 % name AND language IN ($2, $3, $4)
ORDER BY
    author_id, score DESC, importance_rank DESC
LIMIT
    10
Run Code Online (Sandbox Code Playgroud)

我主要是在查询相似性,因为这是一个自动完成端点,所以我在名字上有一个trigram索引.我也在其他一些领域进行排序.我不确定该score字段将如何与我的其他索引混合以及是否更好地拥有这样的复合索引

选项1

CREATE INDEX ON "autocomplete_books" USING GIN …
Run Code Online (Sandbox Code Playgroud)

postgresql indexing similarity postgresql-9.3

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

打字稿:创建具有相同键但不同值的对象

我有以下初始对象

const initialValues = { name: 'Jon', email: 'jon@me.com' }
Run Code Online (Sandbox Code Playgroud)

我想创建一个相同的对象,除了所有值都在,boolean并且默认为false. 像这样

const expected = { name: false, email: false }
Run Code Online (Sandbox Code Playgroud)

我创建了以下功能,它可以满足我的要求

const expected = cloneWithDefaults<typeof initialValues>(initialValues)

function cloneWithDefaults<T>(values: T) {
  type U = { [K in keyof T]: boolean }
  const keys = Object.keys(values) as Array<keyof T>
  const partial: Partial<U> = keys.reduce<Partial<U>>((acc, cur) => {
    acc[cur] = false
    return acc
  }, {})
  const final = partial as U
  return final
}
Run Code Online (Sandbox Code Playgroud)

我还创建了一个不使用 reduce 的第二个版本

function …
Run Code Online (Sandbox Code Playgroud)

typescript typescript-typings

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

位置粘性与弯曲方向列反向

我正在尝试创建一个具有弯曲方向列反转的粘性中心元素。使用 flex-direction 列效果很好。这可以通过列反转实现吗?

.parent {
  display: flex;
  overflow-y: scroll;
    /*  works with flex-direction: column;   */
  flex-direction: column-reverse;
  height: 200px;
  border: 1px solid #ccc;
  position: relative;
}
.child, .sticky {
  width: 100%;
  height: 40px;
  background: gold;
  border-bottom: 1px solid #555;
  flex-shrink: 0;
}

.sticky {
  background: crimson;
  position: sticky;
  top: 0;
  bottom: 0;
}
Run Code Online (Sandbox Code Playgroud)
<div class="parent">
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
  <div class="sticky"></div>
  <div class="child"></div>
  <div …
Run Code Online (Sandbox Code Playgroud)

html css sticky flexbox

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

如何观察第三方对象的属性值变化?

我想观察第三方对象的属性何时发生更改。我正在采取分配自定义设置器的方法,但我的console.log下面从未被调用。这是为什么?有更好的方法吗?

const foo = { a: 1, b: 2 };

Object.assign(foo, {
  set user(user) {
    foo.user = user;
    console.log(">>>>>> user was changed", user);
  },
});

// Desired behaviour
foo.user = "asdf"; // >>>>>> user was changed asdf
delete foo.user; // >>>>>> user was changed undefined
foo.user = "asdf1" // >>>>>> user was changed asdf1
Run Code Online (Sandbox Code Playgroud)

请注意,我需要变异,我无法将代理包装在 foo 周围并返回它,因为它是内部foo变异的第三方库.user

javascript properties object propertydescriptor observable

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

从对象数组构造 TypeScript 类型

我有数据库表的以下架构列(用于西瓜数据库)。

const columns = [
  { name: "created_at", type: "number", isOptional: true },
  { name: "created_by", type: "string" },
  { name: "is_corrupt", type: "boolean", isOptional: true },
];
Run Code Online (Sandbox Code Playgroud)

我想创建一个泛型,它将根据上面的示例创建以下类型,我该怎么做?

type ExpectedInferredTypeFromColumns = {
  created_at: number | null;
  created_by: string;
  is_corrupt: boolean | null;
};
Run Code Online (Sandbox Code Playgroud)

我的尝试:

type InferTypeFromColumns<T extends ReadonlyArray<Column>> = {
  [K in T extends ReadonlyArray<infer U>
    ? U extends { name: string }
      ? U["name"]
      : never
    : never]: T extends ReadonlyArray<infer U>
    ? U extends { type: "number"; …
Run Code Online (Sandbox Code Playgroud)

typescript

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

在 macOS 上的任何应用程序中获取选定的文本

当用户按下全局快捷方式时,我试图获取选定的文本。无论当前聚焦的应用程序是 chrome、safari 还是 Microsoft Word,我的应用程序都应该读取当前选择的文本。

我正在尝试使用 AppleScript 来执行此操作,该脚本使用剪贴板进行黑客攻击。但这并不适用于所有应用程序。

func readSelectedText() {
    let script = """
    -- Back up clipboard contents:
    set savedClipboard to the clipboard

    -- Copy selected text to clipboard:
    tell application "System Events" to keystroke "c" using {command down}
    delay 1 -- Without this, the clipboard may have stale data.

    set theSelectedText to the clipboard

    delay 1 -- Without this delay, may restore clipboard before pasting.

    -- Restore clipboard:
    set the clipboard to savedClipboard

    return theSelectedText
    """

    var …
Run Code Online (Sandbox Code Playgroud)

macos applescript appkit swift

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