小编Chr*_*oba的帖子

如何在Django Rest Framework中的一个串行器中更新两个模型?

我有一个数据库模式,它将每个特定类型的对象存储在两个单独的表中(每个表中有一行,每个表中有不同的数据,外键从一个到另一个.)

不幸的是,Django Rest Framework倾向于假设序列化器和模型之间存在一对一的对应关系,这与我的情况不符.我该怎么接近这个?似乎序列化程序应返回对象的表示形式,这将是ajax请求的实际HTTP响应,因此使用两个序列化程序似乎不正确.我已经看过扩展BaseSerializer(这是我目前计划实现这个,如果我找不到更好的解决方案),但某些方法接受一个instance,它应该包含序列化对象所需的所有数据,而我有两个实例相关.

任何建议都会非常感激!谢谢.

django django-rest-framework

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

Vue.js:如何使动态创建的HTML使用作用域的CSS?

精简版:

我在组件的方法中使用HTML生成一个字符串,我无法弄清楚如何使用作用域CSS来设置HTML样式,因为它缺少作用域的数据属性.

版本略长:

我有一个名为highlight的函数,它接受一个字符串并返回一个HTML字符串,其中突出显示所有出现的搜索词,意思是用a包围<span class="match">.但是,由于我是在字符串中手动执行此操作,因此该跨度不会获得我的Vue组件中的作用域CSS需要工作的特殊数据属性,因此我对这些匹配进行样式设置的唯一方法是创建我的CSS没有范围,我不想这样做.是否有更多Vue特定的方式让我这样做?该函数如下所示:

// Source: http://stackoverflow.com/a/280805/2874789
function highlight(data, search) {
    return data.replace(
      new RegExp("(" + preg_quote(search) + ")", 'gi'),
      "<span class=match>$1</span>"
    );
}
Run Code Online (Sandbox Code Playgroud)

(preg_quote只是一个逃避需要转义的东西的函数)

谢谢!

javascript vue.js vue-component vuejs2

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

如何使"空间周围"的柔性框布局的最后一行不居中?

我正在使用弹性盒来安排一些同样大小的div,我已经设置好了justify-content: space-around.对于除最后一行之外的所有行,这看起来很棒.我希望最后一行中的任何元素与前一行中最左边的div相同.

这就是它的样子:

在此输入图像描述

在此输入图像描述

这就是我想要的:

在此输入图像描述

在此输入图像描述

我怎样才能做到这一点?

目前,我有这个CSS:

#container {
  display: flex;
  flex-flow: row wrap;
  max-width: 400px;
  border: 1px solid red;
  justify-content: space-around
}

#container > div {
  border: 1px solid black;
  width: 110px;
}
Run Code Online (Sandbox Code Playgroud)

使用此HTML结构:

<div id="container">
  <div>Content</div>
  <div>Content</div>
  ...
  ...
</div>
Run Code Online (Sandbox Code Playgroud)

这是一个小提琴:https://jsfiddle.net/chrisshroba/q2mm9ccj/

html css css3 flexbox

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

为什么合并分支上的 git 提交显示在我的主分支上?

我目前有一个 git 提交树,看起来像这样,括号中带有指针(?):

*   305f Merge branch 'develop' (HEAD->master, origin/master, origin/HEAD)
|\
| * d97b Some other commit on dev branch (develop) 
| * df14 Some commit on dev branch
|/
* 7a761b6 Initial commit
Run Code Online (Sandbox Code Playgroud)

我已将 master 分支推送到远程(Gitlab,如果重要的话),当我在 Gitlab UI 中查看 master 分支上的提交时,所有 4 个提交都存在,而我原本期望只有“合并分支 'develop” '”和“初始提交”提交出现在主分支上。

我的理解是,它master指的是我刚刚列出的两个提交,而develop指的是“其他一些...”,“一些提交...”,也可能是“初始提交”,因为它是祖先。

我哪里错了?

git merge branch git-branch

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

如何拉下远程分支?

我一直在寻找如何拉远程分支的半小时,但无法弄清楚。

我的远程 git 存储库有一个名为frontend. 当我运行时,git pull origin frontend我得到以下输出:

* branch             frontend     -> FETCH-HEAD
Already up-to-date.
Run Code Online (Sandbox Code Playgroud)

当我运行时git branch,我得到以下信息:

*master
Run Code Online (Sandbox Code Playgroud)

为什么不在frontend由 返回的列表中git branch

如果它有帮助,当我运行时git branch -v -a,返回的分支之一是remotes/origins/frontend

提前致谢!!

git git-pull

4
推荐指数
3
解决办法
8528
查看次数

在webpack-simple Vue.js模板中,如何从控制台访问Vue应用程序?

我创建使用Vue.js应用vue-cli的WebPack-简单的模板,它的伟大工程.在提供的main.js中,我将new Vue(...行更改为var vm = new Vue(...,以便我可以从Chrome开发者控制台访问Vue实例,但变量vm仍然显示为未定义.

对于我来说,获取对Vue对象的引用的正确方法是什么,以便我可以执行诸如在组件中手动生成事件或从控制台手动修改数据等操作?

vue.js vuejs2

4
推荐指数
1
解决办法
1294
查看次数

桌面应用程序应如何不断轮询服务器以获取更新?

我正在编写一个桌面应用程序,需要响应我的服务器上可能随时发生的更改,并且我希望应用程序在计算机登录时始终运行.有没有一种方法被认为是最标准的或应避免的方法?我考虑过的几个解决方案是:

  • 每秒向服务器发送两次请求(这大约是我想要的响应时间)
  • 打开websockets连接,以便服务器可以只写一个打开的管道.

如果服务器只是在没有数据的情况下返回错误或短消息,那么使用第一个选项会不好?这会影响网络上的其他网络活动吗?

提前致谢!!

server-side websocket

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

Zsh管道输出到命令

在Zsh中,我知道您可以command &> file.txt所有文件描述符传递给file.txt(而不是像单独使用command 2>&1 3>&1 > file.txt三个文件描述符那样单独执行每个文件描述符).有没有办法将所有文件描述符传递给另一个命令?如command <mystery operator> cat

编辑:我错了,正如Chepner和Etan指出的那样; &>只重定向fd的1和2.谢谢!

bash shell zsh file-descriptor

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

为什么我的 bulma 列会换行,尽管没有设置 is-multiline ?

我使用 Bulma 进行列管理,它有一个is-multiline可用于允许列换行的类。但是,我没有使用此类,但我的列仍在换行。

预期行为:

两列始终并排位于同一行

实际行为:

在某些视口宽度下,第二列位于第一列下方而不是旁边。

问题

如果您熟悉 Bulma,您介意看一下这个简单的示例,并让我知道我是否做了明显错误的事情吗?非常感谢!

超文本标记语言

<div class="body">
  <div class="columns">
    <div class="column row-name is-narrow">
      Row 1
    </div>
    <div class="column row-cells">
      Some data
    </div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

.body {
  width: 600px;
  background-color: #000;
  margin: 0 auto 0;
}
.row-name {
  background-color: #ffff0088;
  width: 50px;
}
.row-cells {
  background-color: #ff000088;
}
Run Code Online (Sandbox Code Playgroud)

JSFiddle: https: //jsfiddle.net/8ggyagxp/10/

css bulma

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

sscanf不能正常工作?

我正在尝试解析一个URL,并编写了这段代码:

#include <stdio.h>

int main() {
    char host[100];
    char port[100];
    char path[100];
    char prot[100];
    char* url = "https://google.com:8000/foobar";
    sscanf(url, "%s://%s:%s/%s", prot, host, port, path);
    printf("Protocol: %s\n", prot);
    printf("Host:     %s\n", host);
    printf("Port:     %s\n", port);
    printf("Path:     %s\n", path);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是,它输出:

Protocol: https://google.com:8000/foobar
Host:     å0&TFaa
Port:     
Path:
Run Code Online (Sandbox Code Playgroud)

我不确定为什么将所有字符串放入协议变量中,而不是将正确的部分放入每个变量中.有任何想法吗?

c scanf

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