我已经尝试调试这个并最终在ActionView :: PathResolver类和下面的这段特殊代码:
#include <iostream>
#include <cmath>
using namespace std;
int is_len(int number, int len)
{
if(pow(10, len-1) <= number && number < pow(10, len))
return true;
return false;
}
int main()
{
int number = 1000;
cout << is_len(1, 2) << endl;
cout << is_len(1005, 4) << endl;
cout << is_len(9999, 4) << endl;
cout << is_len(599, 4) << endl;
cout << is_len(1005, 5) << endl;
return 0;
}
看起来File.fnmatch方法在测试环境中返回不同的结果。我在开发和测试环境中渲染相同的动作,并比较fnmatch方法的结果。在test中无法匹配文件名来查询。
我不知道为什么会这样。这仅在一台机器上发生。它是OSX Yosemite 10.10.2(14C2055),rvm 1.26.11和ruby 2.2.2p95。