小编she*_*ger的帖子

从Postgres中的JSONB字段中选择非空的SELECT值

我无法从Postgres 9.5中的JSONB字段内的属性中选择非空值

SELECT data->>'property' FROM mytable WHERE data->>'property' IS NOT NULL;

我也尝试过使用NOTNULL.

当我运行其中任何一个时,我收到错误42883."错误:运算符不存在.JSONB - >> boolean提示:没有运算符匹配给定的名称和参数类型.您可能需要添加显式类型转换."

postgresql jsonb

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

图像未复制到Pelican中的输出文件夹

在pelicanconf.py里面我有:

STATIC_PATHS = ['images', 'extra/CNAME']
Run Code Online (Sandbox Code Playgroud)

我在images/filename.jpg里面有一个图像文件

当我运行时pelican content,我的内容按预期重建,但没有创建图像文件夹,我的文件也没有放在输出文件夹中.

如何将我的图像文件放入输出文件夹,以便在我的网站上使用?

使用Pelican 3.5和Python 2.7.8

python pelican

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

在Heroku中为Phoenix Framework设置MIX_ENV

我成功地实例化了两个Heroku应用程序:my-app-prod和my-app-test.我在Heroku应用程序设置中配置了特定的环境变量.我在Phoenix使用标准配置文件:config.exs,test.exs,prod.exs,dev.exs.

在Heroku中使用app变量MIX_ENV = test配置my-app-test后,它仍然从prod.exs加载变量.

我还缺少任何额外的步骤,以便我的应用程序使用test.exs吗?

我按照这里的所有说明操作:https: //hexdocs.pm/phoenix/heroku.html

当我运行git push时,我可以根据以下输出验证它是否正在使用prod.exs.

remote: Generated my_phoenix_app_name app
remote: -----> Creating .profile.d with env vars
remote: -----> Writing export for multi-buildpack support
remote: -----> Executing post compile: pwd
remote: /tmp/build_f5b9e6e5890fcb58b9689f433c554c6a
remote: -----> Phoenix app detected
remote: 
remote: -----> Loading configuration and environment
remote:        Loading config...
remote:        Detecting assets directory
remote:        * package.json found in custom directory
remote:        Will use phoenix configuration:
remote:        * assets path .
remote:        * mix tasks namespace phoenix
remote: …
Run Code Online (Sandbox Code Playgroud)

elixir-mix heroku elixir phoenix-framework

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

验证PHPUnit中的HTTP响应代码

我正在为返回HTTP响应代码的几种方法编写单元测试。我找不到断言HTTP响应代码的方法。也许我缺少明显的东西,或者我误解了有关PHPUnit的东西。

我正在使用PHPUnit 4.5稳定版。

类消息的相关部分:

public function validate() {
  // Decode JSON to array.
  if (!$json = json_decode($this->read(), TRUE)) {      
    return http_response_code(415);
  }
  return $json;
}

// Abstracted file_get_contents a bit to facilitate unit testing.
public $_file_input = 'php://input';

public function read() {
  return file_get_contents($this->_file_input);
}
Run Code Online (Sandbox Code Playgroud)

单元测试:

// Load invalid JSON file and verify that validate() fails.
public function testValidateWhenInvalid() {
  $stub1 = $this->getMockForAbstractClass('Message');
  $path =  __DIR__ . '/testDataMalformed.json';
  $stub1->_file_input = $path;
  $result = $stub1->validate();
  // At this point, we have …
Run Code Online (Sandbox Code Playgroud)

php phpunit unit-testing

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

Cypher + Neo4j中加载CSV失败“ LoadExternalResourceException:无法在以下位置加载外部资源:”

我在运行Ubuntu 14.04的公司云服务器上全新安装了Neo4j 2.1.4开源软件。我正在将CSV文件导入数据库。我文件的路径是'/home/username/data-neo4j/node.csv'

以下是我的命令,该命令是从Neo4j命令行工具neo4j-shell运行的:

LOAD CSV WITH HEADERS FROM "file:///home/username/data-neo4j/node.csv" AS line CREATE (:Node { nid: toInt(line.nid), title: line.title, type: line.type, url: line.url});

返回:

LoadExternalResourceException: Couldn't load the external resource at: file:/home/user/data-neo4j/node.csv

这看起来像一条消息,指出找不到文件。但是,该文件到位。我什至尝试将文件的权限更改为755。

我在本地计算机(带有Neo4j 2.1.2 Enterprise的OSX)上有一个Neo4j的单独实例。给定我切换的路径以匹配,该命令在本地计算机上成功执行。

当我运行neo4j-shell时,我注意到的一件事是 NOTE: Remote Neo4j graph database service 'shell' at port 1337。我已经打开了该端口,但是我的命令仍然返回相同的错误消息。

我也阅读了此链接-但他们的问题是他们尚未上传文件。我的文件到位了。

neo4j LOAD CSV返回无法加载外部资源

csv neo4j cypher load-csv

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

ISO 8601作为Ecto.DateTime.cast()的输入格式

我正在处理来自外部API的数据.它将时间戳返回为ISO 8601格式,带有时区.

我的理解是Ecto版本2.1-rc(我的版本)可以处理这样的时间戳而没有问题.但是,当我尝试执行:

created_at = Ecto.DateTime.cast!("2016-10-16T21:21:27-04:00")
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

(Ecto.CastError) cannot cast "2016-10-16T21:21:27-04:00" to datetime
Run Code Online (Sandbox Code Playgroud)

我的时间戳有问题吗?

timestamp elixir ecto

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