小编Pra*_*dra的帖子

嵌套文档中字段上的猫鼬索引

我有一个小架构

var PostSchema = new mongoose.Schema({
  title: String,
  link: String,
  author: {type:String,required:true},
  upvotes: {type: Number, default: 0},
  nesteddoc : {
      field1: String
  }
});

//This is broken - index on field1
PostSchema.index({nesteddoc.field1:1},{unique:true});
Run Code Online (Sandbox Code Playgroud)

通过在 Mongoose 模式中指定而不运行 MongoDB 查询来确保索引,是否可以在嵌套字段上创建索引?

mongoose mongodb node.js

9
推荐指数
1
解决办法
7562
查看次数

如何在Spring Boot中的JSON中抛出异常

我有一个请求映射 -

  @RequestMapping("/fetchErrorMessages")
  public @ResponseBody int fetchErrorMessages(@RequestParam("startTime") String startTime,@RequestParam("endTime") String endTime) throws Exception
  {
      if(SanityChecker.checkDateSanity(startTime)&&SanityChecker.checkDateSanity(endTime))
      {
          return 0;
      }
      else
      {
          throw new NotFoundException("Datetime is invalid");
      }
  }
Run Code Online (Sandbox Code Playgroud)

如果startTime和endTime无效,我想抛出500错误但返回JSON中的异常字符串.但是,我得到一个HTML页面而不是说

白标错误页面

此应用程序没有/ error的显式映射,因此您将此视为回退.

Wed Dec 20 10:49:37 IST 2017
出现意外错误(type = Internal Server Error,status = 500).
日期时间无效

我反而希望用JSON返回500

{"error":"Date time format is invalid"}
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

java spring json spring-mvc spring-boot

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

重新启动服务器后RethinkDB丢失数据

我将数据保存在RethinkDB数据库中.只要我不重启服务器,一切都很好.但是当我重新启动时,它给出了一个错误,说数据库不存在,尽管文件夹和数据确实存在于文件夹rethinkdb_data中.问题是什么 ?

python rethinkdb rethinkdb-python ubuntu-14.04

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

无法编译任何 C++ 代码

每当我尝试使用 IOStream 编译 C++ 文件时,我都会收到此错误。我尝试重新安装 GCC G++ (4.6 和 4.9)和 cpp ..它没有帮助(或者也许我没有以正确的方式执行此操作)。我该如何修复这个错误

\n\n
In file included from /usr/include/c++/4.9/bits/localefwd.h:40:0,\n             from /usr/include/c++/4.9/ios:41,\n             from /usr/include/c++/4.9/ostream:38,\n             from /usr/include/c++/4.9/iostream:39,\n             from Integration_Any.cpp:1:\n/usr/include/x86_64-linux-gnu/c++/4.9/bits/c++locale.h:52:23: error:\xe2\x80\x98uselocale\xe2\x80\x99was         not declared in this scope\n   extern "C" __typeof(uselocale) __uselocale;\n                   ^\n/usr/include/x86_64-linux-gnu/c++/4.9/bits/c++locale.h:52:45: error: invalid type in    declaration before \xe2\x80\x98;\xe2\x80\x99 token\n   extern "C" __typeof(uselocale) __uselocale;\n                                         ^\n/usr/include/x86_64-linux-gnu/c++/4.9/bits/c++locale.h: In function \xe2\x80\x98int     std::__convert_from_v(__locale_struct* const&, char*, int, const char*, ...)\xe2\x80\x99:       /usr/include/x86_64-linux-gnu/c++/4.9/bits/c++locale.h:75:53: error:     \xe2\x80\x98__gnu_cxx::__uselocale\xe2\x80\x99 cannot be used as a function\n     __c_locale __old = __gnu_cxx::__uselocale(__cloc);\n                                                 ^\n/usr/include/x86_64-linux-gnu/c++/4.9/bits/c++locale.h:100:33: error:     \xe2\x80\x98__gnu_cxx::__uselocale\xe2\x80\x99 cannot be used as …
Run Code Online (Sandbox Code Playgroud)

c++ g++ ubuntu-12.04

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

适用于Facebook和Google+的onActivityResult代码在Android中登录

用于在Android中登录的Facebook API代码很简单,方法onActivityResult

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        callbackManager.onActivityResult(requestCode, resultCode, data);
}
Run Code Online (Sandbox Code Playgroud)

Google的文档说明了相同方法的代码必须是

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    Log.d(TAG, "onActivityResult:" + requestCode + ":" + resultCode + ":" + data);

    if (requestCode == RC_SIGN_IN) {
        // If the error resolution was not successful we should not resolve further.
        if (resultCode != RESULT_OK) {
            mShouldResolve = false;
        }

        mIsResolving = false;
        mGoogleApiClient.connect();
    }
}
Run Code Online (Sandbox Code Playgroud)

假设声明并初始化所有变量.为了处理Facebook和G …

android google-plus

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

在 NodeJS 中一次只允许从一台设备登录

我正在使用 JWT 进行身份验证。但是我不希望用户从多个设备登录。我如何确保这一点?

现在 - 我能想到的就是将 JWT 存储到数据库中,然后检查它是否存在。如果它存在,它是在什么时间生成的。如果时间太长 - 我们会重新生成令牌并传递回第二个设备。

node.js json-web-token

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

如何在 Python 中访问 Outlook 收件箱中的子文件夹

我在 Outlook 中创建了一个规则,将所有传入邮件从特定发件人移动到我的收件箱中的子文件夹中。Like -

Inbox
- Subfolder
Run Code Online (Sandbox Code Playgroud)

我写了一段代码

import win32com.client

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")

inbox = outlook.GetDefaultFolder(6) #6 = Inbox (without mails from the subfolder)
messages = inbox.Items
message = messages.GetLast()
body_content = message.body 
print body_content #Sometimes has parsing error due to different encoding format
Run Code Online (Sandbox Code Playgroud)

我怎样才能

1)阅读收件箱内这个特定文件夹中的邮件

2) 处理像 UnicodeEncodeError: 'charmap' codec can't encode - character maps to

print (u'\2109') 也发出这个错误。

python outlook pywin32

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

IntelliJ 说依赖项列表中的项目无效,但它存在于 Maven 存储库中

我的 IntelliJ 说

Module <redacted> : invalid item 'Maven: com.ibm:com.ibm.mq.commonservices:7.1.0.6' in the dependencies list
Run Code Online (Sandbox Code Playgroud)

但它在 Maven 存储库中。我尝试了这个解决方案。但这没有用。此类进口有 107 个。我该怎么办 ?

java intellij-idea maven

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

使用 NetworkX 和 Matplotlib 的图形的高分辨率图像

我有一个 python 代码来生成一个包含 300 个节点和 200 个边的随机图并显示它

import networkx as nx
import matplotlib.pyplot as plt

G = nx.gnm_random_graph(300,200)
graph_pos = nx.spring_layout(G)
nx.draw_networkx_nodes(G, graph_pos, node_size=10, node_color='blue', alpha=0.3)
nx.draw_networkx_edges(G, graph_pos)
nx.draw_networkx_labels(G, graph_pos, font_size=8, font_family='sans-serif')
plt.show()
Run Code Online (Sandbox Code Playgroud)

但是,因为节点太多,所以我需要有更多的像素,以便我可以放大并保存它。

如果我把

plt.figure(figsize=(18,18))
Run Code Online (Sandbox Code Playgroud)

在显示之前,节点和边不会出现。有什么问题,我该如何解决?

python matplotlib networkx

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

Launch4J 插件创建一个 EXE(以及 JAR),但 EXE 在 Spring boot 中找不到主类

我编写了一个插件,在 Launch4J 插件的帮助下为我的项目创建 EXE 和 JAR。但是,在执行 EXE 文件时,我收到错误 -

Error: Could not find or load main class
Run Code Online (Sandbox Code Playgroud)

然而,我通过给运行JAR java -jar app.jar,它运行完美。

这是我的插件部分

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <mainClass>com.mycompany.tool.orchestrator.command.CommandHandler</mainClass>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>
            <plugin>
                <groupId>com.akathist.maven.plugins.launch4j</groupId>
                <artifactId>launch4j-maven-plugin</artifactId>
                <version>1.7.16</version>
                <executions>
                    <execution>
                        <id>l4j-clui</id>
                        <phase>package</phase>
                        <goals>
                            <goal>launch4j</goal>
                        </goals>
                        <configuration>
                            <headerType>console</headerType>
                            <outfile>target/apidast.exe</outfile>
                            <jar>${project.build.directory}/${artifactId}-${version}.jar</jar>
                            <errTitle>encc</errTitle>
                            <classPath>
                                <mainClass>com.mycompany.tool.orchestrator.command.CommandHandler</mainClass>
                                <!--Not sure what the next 2 lines are for -->
                                <addDependencies>true</addDependencies>
                                <preCp>anything</preCp>
                            </classPath>
                            <jre>
                                <minVersion>1.8.0_212</minVersion>
                                <!--Not sure what these opts are for …
Run Code Online (Sandbox Code Playgroud)

java launch4j maven-plugin maven spring-boot

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