小编Bra*_*ace的帖子

如何访问Jinja2中列表的一部分

我正在尝试使用jinja2模板语言返回帖子列表中的最后n个(比方说5个)帖子:

{% for recent in site.posts|reverse|slice(5) %}
    {% for post in recent %}
        <li> <a href="/{{ post.url }}">{{ post.title }}</a></li>
    {% endfor %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

这会返回整个列表.你如何剥离第一个或最后一个元素?

python templates jinja2

24
推荐指数
5
解决办法
3万
查看次数

C#正则表达式匹配字母,数字和下划线

我想在C#中创建一个正则表达式模式.该模式只允许:

  • 数字
  • 下划线

到目前为止我运气不好(我不擅长RegEx).这是我到目前为止所尝试的:

// Create the regular expression
string pattern = @"\w+_";
Regex regex = new Regex(pattern);

// Compare a string against the regular expression
return regex.IsMatch(stringToTest);
Run Code Online (Sandbox Code Playgroud)

c# regex

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

使用@WebMvcTest获取"必须至少存在一个JPA元模型"

我是Spring的新手,试图为a做一些基本的集成测试@Controller.

@RunWith(SpringRunner.class)
@WebMvcTest(DemoController.class)
public class DemoControllerIntegrationTests {
    @Autowired
    private MockMvc mvc;

    @MockBean
    private DemoService demoService;

    @Test
    public void index_shouldBeSuccessful() throws Exception {
        mvc.perform(get("/home").accept(MediaType.TEXT_HTML)).andExpect(status().isOk());
    }
}
Run Code Online (Sandbox Code Playgroud)

但我得到了

java.lang.IllegalStateException: Failed to load ApplicationContext
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaMappingContext': Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: At least one JPA metamodel must be present!
Caused by: java.lang.IllegalArgumentException: At least one JPA metamodel must be present!

与发布此错误的大多数人不同,我不想为此使用JPA.我试图使用@WebMvcTest不正确吗?我怎样才能找到邀请JPA参加这个派对的Spring魔术呢?

java integration-testing spring-mvc spring-data-jpa spring-boot

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

Thread.sleep()的Java性能问题

内联Java IDE提示声明,"在循环中调用Thread.sleep会导致性能问题." 我在文档的其他地方找不到解释.这个说法.

为什么?怎么样?还有什么其他方法可以延迟线程的执行?

java multithreading

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

GIT从特定标签中提取/提取

有没有办法从回购中的特定标签中提取/获取代码.

我知道在克隆之后,我可以签出标签,但是可以在拉动期间指定标签吗?

在ClearCase中我可以重新定义或提供特定的代码基线,有没有一种方法可以使用git标签,类似于将代码拉/推到指定的标签?

git git-pull git-fetch

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

移动设备上的可视视口与布局视口

我刚刚在视口上看一篇很好的文章,给我留下了一些关于移动设备上的视口视口与布局视口的问题.

布局视口的宽度和高度等于最大缩小模式下屏幕上显示的宽度和高度

我不太明白这意味着什么.当他们说"最大缩小模式"时,这是否意味着布局视口对于不同的HTML是不同的(并且不是特定于iPad,Xoom等不同的设备)?

其次,我创建了一个演示页来测量这两个视口.(请在iPhone/iPad上查看此内容以获取正确的值.)

我知道可以通过设置元视口标记来更改布局视口,但这也会更改视觉视口 - 为什么会这样?它表示视觉视口是当前在屏幕上显示的页面的一部分,因此我的理解是视觉视口不应受元视口设置的影响.

html javascript iphone safari viewport

20
推荐指数
1
解决办法
9182
查看次数

我不允许在文件名中使用什么字符序列?

我在测试后发现linux允许除了/和null(\0)之外的文件名中的任何字符.那么我不应该在文件名中允许什么序列?我听说一个领导者-可能会混淆一些命令行程序,这对我来说无关紧要,但如果他们决定收集一堆文件并用一些GNU程序过滤它,它可能会打扰其他人.

建议我删除前导和尾随空格,我计划只是因为通常用户并不意味着有前导/尾随空格.

可能存在哪些有问题的序列以及我应该考虑不允许的序列?我也在考虑为了方便而不允许在Windows中使用非法字符.我想我可能不会在开头允许短划线(破折号是一个合法的窗口角色)

linux filenames command-line

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

生成不从零开始的范围内的随机整数

如何生成7到10之间的数字?到目前为止,我所知道的是在0-10的范围内产生:

Math.floor(Math.random()*11)
Run Code Online (Sandbox Code Playgroud)

javascript random

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

如何创建一个接受代码块的Perl子例程

我有一组子程序,如下所示:

sub foo_1($) {
  my $name = shift;
  my $f; 

  run_something();
  open($f, $name) or die ("Couldn't open $name");
  while (<$f>) {
    //Something for foo_1()
  }
  close($f); 
  do_something_else();

}
Run Code Online (Sandbox Code Playgroud)

我有四个或更多看起来相同,唯一改变的是while块的主体.我想抽象一下并停止复制粘贴代码.

  • 有没有办法编写一个接受代码块并执行它的子程序?

为了给出更多的上下文,不同的foo子程序是一个不同的有限状态机(FSM),它读取不同文件的内容并将数据提供给哈希引用.也许比我想要完成的事情更聪明.

perl arguments subroutine

18
推荐指数
3
解决办法
4460
查看次数

perl闭包和$ _

我尝试用不熟悉的编程语言学习的第一件事就是它如何处理闭包.它们的语义通常与语言如何处理范围和各种其他棘手的部分交织在一起,因此理解它们会揭示该语言的其他几个方面.此外,闭合是一个非常强大的构造,并且通常会减少我必须键入的样板量.所以我正在搞乱perl闭包,我偶然发现了一个小问题:

my @closures;
foreach (1..3) {
  # create some closures
  push @closures, sub { say "I will remember $_"; };
}
foreach (@closures) {
  # call the closures to see what they remember
  # the result is not obvious
  &{$_}();
}
Run Code Online (Sandbox Code Playgroud)

当我编写上述代码时,我期待看到

I will remember 1
I will remember 2
I will remember 3
Run Code Online (Sandbox Code Playgroud)

但相反,我得到了I will remember CODE(0x986c1f0).

上面的实验揭示了它$_是非常依赖于上下文的,如果它出现在一个闭包中,那么它的值不会在闭包创建时固定.它的行为更像是一个参考.在perl中创建闭包时,我应该注意哪些其他问题?

perl closures programming-languages

16
推荐指数
1
解决办法
1332
查看次数