小编adv*_*ner的帖子

Postgresql json喜欢查询

我有下面的表名为module_data.目前它有三行条目:

                id                               data
0ab5203b-9157-4934-8aba-1512afb0abd0 {"title":"Board of Supervisors Meeting","id":"1i3Ytw1mw98"}
7ee33a18-63da-4432-8967-bde5a44347a0 {"title":"Board of Supervisors Meeting","id":"4-dNAg2mn6o"}
8d71ca35-74eb-4751-b635-114bf04843f1 {"title":"COPD 101", "id":"l9O0jCR-sxg"}
Run Code Online (Sandbox Code Playgroud)

数据是jsonb列.我正在尝试使用like来查询数据列.类似于以下内容:

SELECT * FROM module_data WHERE title LIKE '%Board%';
Run Code Online (Sandbox Code Playgroud)

我一直在寻找jsonb支持,似乎没有像运营商那样.如果有人有任何建议.

postgresql jsonb

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

电子ES6模块导入

电子3.0.0-beta.1节点10.2.0铬66.0.3359.181

我遇到的问题是导入模块。我创建了以下协议:

protocol.registerFileProtocol('client', (request, callback) => {
    var url = request.url.substr(8);
    callback({path: path.join(__dirname, url)});
});
Run Code Online (Sandbox Code Playgroud)

协议的输出是正确的路径

"/Users/adviner/Projects/Client/src/ClientsApp/app.js"
Run Code Online (Sandbox Code Playgroud)

我有以下模块app.js和以下代码:

export function square() {
    return 'hello';
}
Run Code Online (Sandbox Code Playgroud)

在我的index.html中,我像这样导入模块:

    <script type="module" >
        import square from 'client://app.js';
        console.log(square());
    </script>       
Run Code Online (Sandbox Code Playgroud)

但我不断收到错误:

app.js /:1无法加载模块脚本:服务器以非JavaScript MIME类型“”响应。根据HTML规范对模块脚本强制执行严格的MIME类型检查。

我已经完成搜索,但似乎找不到解决方案。谁能建议我可以做这项工作的方法?

谢谢

electron

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

C++如何从基类调用派生类中的方法

我想要做的是Execute()运行并完成它调用Base::Done()然后调用Derived::Done().我这样做是因为Base上课Execute会做点什么,当它完成时会调用Derived::Done().我希望我能正确解释.有点像任务完成时调用的监听器.我有点坚持Base班级如何称呼Derived班级.

class Base
{
  virtual void Done(int code){};
  void Execute();
}

void Base::Execute()
{
}


class Derived : Base
{
  void Done(int code);
  void Run();
}

Derived::Done(int code)
{
}

void Derived::Run()
{
    Execute();
}
Run Code Online (Sandbox Code Playgroud)

c++ virtual-functions

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

Dapper将参数传递给多映射器

使用单个表查询,我将了解如何执行此操作:

var sql = @"SELECT NAME, ID, COUNTY
                FROM INFO_NAME
                WHERE (NAME LIKE @Name) ORDER BY NAME, ID ASC";

IEnumerable<NameView> entrys = sqlConnection.Query<NameView>(sql, new { Name = "%" + name + "%" });
Run Code Online (Sandbox Code Playgroud)

现在,我正在使用多重映射,但不确定如何传递参数。

var sql = @"SELECT NAME, a.ID, 
        b.ID, ADDRESS
        FROM INFO_NAME_NEW a 
        LEFT OUTER JOIN  INFO_ADDRESS b on a.ID = b.ID
        WHERE (NAME LIKE @TName) ORDER BY NAME, a.ID ASC";

var entrys = sqlConnection.Query<NameView, AddressView, NameView>(sql,
    (a, b) =>
    {
        a.AddressView = b;

        return a;
    },
    splitOn: …
Run Code Online (Sandbox Code Playgroud)

dapper

7
推荐指数
0
解决办法
1541
查看次数

QML 旋转图像

当我在图像控件中显示图像时,我试图旋转图像。目前图像显示如下:

在此处输入图片说明

我想将它向右旋转 90 度。我当前的代码如下所示:'

Image {
    id: imagePhoto
    anchors.fill: parent
    width: parent.width
    height: parent.height


    transform: Rotation{                       
        id: rotateImagePhoto
        angle: 0
        origin.x: 0
        origin.y: 0

    }
}
Run Code Online (Sandbox Code Playgroud)

所以我试着玩这个角度:

transform: Rotation{                       
    id: rotateImagePhoto
    angle: 90
    origin.x: 700
    origin.y: 700

}
Run Code Online (Sandbox Code Playgroud)

它正确显示:

在此处输入图片说明

我不明白的是为什么我必须为 x/y 设置这些值。我看过以下网站,但我不明白。

qt qml qt5

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

Qt Mac部署

将QT Framework添加到我的.app包中

我在关于部署的Qt站点上的文档.我创建了一个名为HTTPClient.app的应用程序

我在Contents下创建了Framework文件夹,并复制了crypto ++和qscintilla以及Qt框架,它看起来像这样:

在此输入图像描述

然后我运行install_name_tool -id -change

DylibFile=libqscintilla2.11.dylib
install_name_tool -id @executable_path/../Frameworks/$DylibFile  $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName
Run Code Online (Sandbox Code Playgroud)

和crypto ++相同.我对Qt框架进行了以下操作

DylibFile=QtCore.framework/Versions/5/QtCore
install_name_tool -id @executable_path/../Frameworks/$DylibFile  $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName

DylibFile=QtWidgets.framework/Versions/5/QtWidgets
install_name_tool -id @executable_path/../Frameworks/$DylibFile  $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName

DylibFile=QtGui.framework/Versions/5/QtGui
install_name_tool -id @executable_path/../Frameworks/$DylibFile  $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName


DylibFile=QtSql.framework/Versions/5/QtSql
install_name_tool -id @executable_path/../Frameworks/$DylibFile  $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName

DylibFile=QtNetwork.framework/Versions/5/QtNetwork
install_name_tool -id @executable_path/../Frameworks/$DylibFile  $ProjectName.app/Contents/Frameworks/$DylibFile
install_name_tool -change $DylibFile @executable_path/../Frameworks/$DylibFile $ProjectName.app/Contents/MacOS/$ProjectName
Run Code Online (Sandbox Code Playgroud)

现在,当我运行otool时,我得到以下内容:

在此输入图像描述

我得到了加密和qscintilla路径但是Qt框架也不应该遵循相同的模式吗?它仍指向原始路径

qt

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

Qt 和高 dpi 屏幕

我已经阅读了几篇关于这方面的文章。所以我有一个戴尔 XPS 13 并将文本、应用程序和其他项目的大小更改为 200%

在此处输入图片说明

但我想我的问题如下。当我通过 Qt Designer 启动应用程序时,一切看起来都不错:

在此处输入图片说明

在此处输入图片说明

但是当我在设计器之外运​​行应用程序时(意味着只需双击应用程序即可运行它),大小是不同的:

在此处输入图片说明

在此处输入图片说明 这个工具栏实际上比屏幕截图显示的要小。所以我的问题是有一个设置我可以设置我的应用程序,所以当我在设计器之外启动它时,它看起来就像从设计器启动时一样?

qt

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

Safari ios 和 ipad 使用相机放大

使用 getUserMedia() API 使用相机。我遇到的问题是它适用于除 iOS 和 iPad 之外的所有平台。我可以拍照,但无法缩放。我看到了这个帖子,但没有回复。我正在研究caniuse及其功能,据我所知,移动和桌面上的 Safari 都支持它。有小费吗?

if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
    navigator.mediaDevices.getUserMedia(videoConstraints)
    .then(stream => {

        setTimeout((evt) => {

            const track = stream.getVideoTracks()[0];
            const capabilities = track.getCapabilities();
            const settings = track.getSettings();

            if (('zoom' in capabilities)) {

                alert('zoom exists');
                const elemZoom = this.dom.select(`${this.el} #zoom-slider`);

                // Map zoom to a slider element.
                elemZoom.min = capabilities[`zoom`][`min`];
                elemZoom.max = capabilities[`zoom`][`max`];
                elemZoom.step = capabilities[`zoom`][`step`];
                elemZoom.value = settings[`zoom`];
                elemZoom.oninput = (event) => {
                    track.applyConstraints({
                        advanced: [{
                            zoom: …
Run Code Online (Sandbox Code Playgroud)

mobile-safari getusermedia

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

unique_ptr 并传递到连接

在我的代码中

std::unique_ptr<QNetworkAccessManager> myNetworkAccessManager;
...
myNetworkAccessManager.reset(new QNetworkAccessManager(this));

QObject::connect(myNetworkAccessManager.get(), SIGNAL(finished(QNetworkReply *)), this, SLOT(OnNetworkFinished(QNetworkReply *)));
Run Code Online (Sandbox Code Playgroud)

有问题的代码:connect() 中的myNetworkAccessManager.get ()

我的问题是最好的方法是什么?

我正在阅读这篇文章 ,它在 Legacy Code 下说:

调用 get() 返回一个指向底层方法的指针。如果可以,您真的想避免调用它,因为一旦您将原始指针释放到野外,您就失去了通过切换到 unique_ptr 所获得的许多优势

更新

如果我改成使用如果我使用QScopedPointer,我的代码如下:

QScopedPointer<QNetworkAccessManager> myNetworkAccessManager;
...
myNetworkAccessManager.reset(new QNetworkAccessManager(this));

QObject::connect(myNetworkAccessManager.data(), SIGNAL(finished(QNetworkReply *)), this, SLOT(OnNetworkFinished(QNetworkReply *)));
Run Code Online (Sandbox Code Playgroud)

这会是正确的解决方案吗:

connect(myNetworkAccessManager.data()
Run Code Online (Sandbox Code Playgroud)

更新 2

阅读此链接stackoverflow似乎使用 data() 是正确的解决方案。这意味着使用 stl 中的 get() 也是正确的。

qt unique-ptr c++11 qscopedpointer

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

ES6 Class通过mixins进行多重继承

我正在尝试使用mixins来理解ES6多重继承.

我正在关注这篇文章(简单的mixins).但是当我运行代码时,我的输出是:

  1. main
  2. Uncaught ReferenceError: this is not defined,
    错误console.log('main')再次指向

我在最新版本的Chrome上运行它.这是我的代码:

const RaceDayService = superclass => class extends superclass { 
    constructor(){
        console.log('service');
    }
}

const RaceDayDB = superclass => class extends superclass { 
    constructor(){
        console.log('db');
    }
}

class RaceDayUI {
    constructor(){
        console.log('ui');
    }
}

class RaceDay extends RaceDayDB(RaceDayService(RaceDayUI)){
    constructor(options){
        console.log('main');
    }
}

const raceDay = new RaceDay();
Run Code Online (Sandbox Code Playgroud)

关于我做错的任何想法?

谢谢!

javascript inheritance multiple-inheritance mixins ecmascript-6

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