小编Gio*_*ssi的帖子

在Wagtail(或Django)中获取指定类型的子页面

我有以下代码来获取当前的子页面:

{% for subpage in self.get_children %}
    ...
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

例如,这用于显示图像库(每个子页面都有图像).

但是,当我只有一种类型的子项时,这种方法很好,但是,当我尝试添加另一个子页面(例如显示推荐)时,上面的代码不会过滤子类型.所以它显示所有子项.

我想知道是否有其他方法可以使这项工作或我的方法是错误的(使用子页面).

任何帮助,将不胜感激 :-)

django wagtail

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

如何创建自定义块

我知道在ruby中我们可以使用while循环,但我想知道我是否可以创建一个自定义的循环,所以我可以做这样的事情:

custom_while i < 5 do
    puts i
    i += 1
end
Run Code Online (Sandbox Code Playgroud)

我目前有这个代码:

def custom_while(condition)
    loop do
        break if not condition
        yield
    end
end

i = 0
custom_while i < 5 do
    puts i
    i += 1
end
Run Code Online (Sandbox Code Playgroud)

但是,在condition评估时,它总是变为真(因为它只考虑第一次评估i < 5 = true.

任何帮助将不胜感激!

注意:这仅用于教育目的.

ruby

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

RSpec 中 response 和 last_response 的区别

我有一个测试,检查请求的页面是否返回 200 状态代码:

expect(response).to have_http_status(:success)
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用以下测试明确返回不同的状态代码:

return render json: { error: 'error message' }, status: :unprocessable_entity
Run Code Online (Sandbox Code Playgroud)

它仍然通过。

为什么responselast_response具有不同的状态:

response.status      # 200
last_response.status # 422
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails rspec-rails

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

标签 统计

django ×1

rspec-rails ×1

ruby ×1

ruby-on-rails ×1

wagtail ×1