3

Template Toolkitで動的に生成されたリストにあるいくつかのアイテムをフィルタリングするにはどうすればよいですか?IDのリスト(これも動的に生成されます)と除外するIDのリストがあり、除外されていないIDだけを取得する必要があります。それを行うための最良の方法は何ですか?サンプルコード:

[% SET ids = [1,2,4,10,11,12,13,17,19,20,21,50,51] %]
[% SET id_excluded = [10,11,13,20,50] %]
[% FOREACH pid IN ids %]
    [% IF ?code to filter the ids? %]
        [% pid %]
    [% END %]
[% END %]
4

1 に答える 1

4

grepリストのVMethodを試してください。例:

[% SET ids = [1,2,4,10,11,12,13,17,19,20,21,50,51] %]
[% SET id_excluded = [10,11,13,20,50] %]
[% FOREACH pid IN ids %]
    [% UNLESS id_excluded.grep("^$pid\$").size %]
        [% pid %]
    [% END %]
[% END %]

これにより、次のようになります。

1 2 4 12 17 19 21 51
于 2011-08-12T06:57:05.043 に答える