小编Alm*_*lho的帖子

即使使用限制,Rails Mongoid模型查询结果也会返回错误的大小/长度/计数信息

当在我的Rails应用程序某型号查询,它返回正确的结果,摘取size,lengthcount信息,即使使用limit标准.

recipes = Recipe
  .where(:bitly_url => /some.url/)
  .order_by(:date => :asc)
  .skip(10)
  .limit(100)

recipes.size # => 57179
recipes.count # => 57179
recipes.length # => 57179
Run Code Online (Sandbox Code Playgroud)

我无法理解为什么会这样,它会一直显示食谱集合的总数,而且自从我使用以来,正确的值应该是100 limit.

count = 0
recipes.each do |recipe|
  count += 1
end

# WAT
count # => 100
Run Code Online (Sandbox Code Playgroud)

有人能帮助我吗?谢谢!

-
Rails版本:3.2.3
Mongoid版本:2.4.10
MongoDB版本:1.8.4

ruby-on-rails count limit mongodb mongoid

8
推荐指数
1
解决办法
1273
查看次数

如何在 py.test 上选择多个测试?

我熟悉py.test -k string用于选择string名称中包含 的所有测试并运行它的命令。

我想要的是选择具有多个string参数的测试,例如OR逻辑选择。例如,假设我有 3 个测试:

  • test_should_connect
  • test_should_execute
  • test_should_return

假设我只想跑步,test_should_connect而且test_should_return只是。我在py.test 文档中寻找答案,为此我应该使用以下命令:

py.test -k "connect or return"
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用=/

pytest

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

react-native-router-flux:如何防止在标签之间切换时重置Tab场景历史堆栈?

我有一个Router有2个标签场景的设置:

  • 标签1:有2个可导航的场景(静态屏幕);
    • 屏幕A:有一个导航到屏幕B的按钮;
    • 屏幕B:只有一个文字;
  • 标签2:只有1个静态屏幕.
    • 屏幕C:只有一个文字;

代码如下.

app.js:

import React from 'react';
import { Router, Scene } from 'react-native-router-flux';
import Tab from '../tab';
import ScreenA from './a';
import ScreenB from './b';
import ScreenC from './c';


export default class App extends React.Component {
  render(){
    return (
      <Router>
        <Scene key="root">
          <Scene key="tabbar" tabs={true}>

            <Scene key="tab1" title="Tab 1" icon={Tab}>
              <Scene key="a" title="Screen A" component={ScreenA} />
              <Scene key="b" title="Screen B" component={ScreenB} />
            </Scene>

            <Scene key="tab2" …
Run Code Online (Sandbox Code Playgroud)

react-native react-native-router-flux

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