我有几个带签名view.py
def create_stuff(request):
if request.method == 'POST':
form = FileFieldForm(request.POST, request.FILES)
files = request.FILES.getlist('stuff_image')
if form.is_valid():
for f in files:
form.save()
return redirect('list-stuff')
else:
form = FileFieldForm()
return render(request, 'stuffapp/create_stuff.html', {'form': form})
的过滤函数。我想创建一个组合过滤器,它是AND不同的过滤器。我知道我可以这样做:
'a -> bool
是否有任何更简洁方式直接撰写函数而不完全应用它们(例如从let fCombined x =
f1 x
&& f2 x
&& f3 x
的定义中删除x
)?
(我知道还有其他方法可以使用fCombined
,例如使用bool
函数并使用'a -> 'a option
编写它们,但这几乎不多简洁。)
答案 0 :(得分:7)
如果你想失去参数x
,你可以让自己成为一个特殊的算子:
let (&&.) f g x = f x && g x
let fCombined = f1 &&. f2 &&. f3
但我不认为这是值得担心的事情。争论完全没问题。