X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FSlices.py;h=e5a51ebed58cf195c4293a4c06c8a54ae08743e3;hb=19d4a01ccf66af9e00914351b3eacd5fc880f988;hp=93ec56240352f7c0eb902456e7b89458659e4c6f;hpb=6ffdbf9ac330341884e1e6e171b6d22787f5e0da;p=plcapi.git diff --git a/PLC/Slices.py b/PLC/Slices.py index 93ec562..e5a51eb 100644 --- a/PLC/Slices.py +++ b/PLC/Slices.py @@ -60,7 +60,7 @@ class Slice(Row): # 2. Begins with login_base (letters or numbers). # 3. Then single underscore after login_base. # 4. Then letters, numbers, or underscores. - good_name = r'^[a-z0-9]+_[a-zA-Z0-9_]+$' + good_name = r'^[a-z0-9\.]+_[a-zA-Z0-9_\.]+$' if not name or \ not re.match(good_name, name): raise PLCInvalidArgument, "Invalid slice name" @@ -281,7 +281,8 @@ class Slices(Table): slice_filter = Filter(Slice.fields, {'slice_id': ints, 'name': strs}) sql += " AND (%s) %s" % slice_filter.sql(api, "OR") elif isinstance(slice_filter, dict): - slice_filter = Filter(Slice.fields, slice_filter) + allowed_fields=dict(Slice.fields.items()+Slice.tags.items()) + slice_filter = Filter(allowed_fields, slice_filter) sql += " AND (%s) %s" % slice_filter.sql(api, "AND") elif isinstance (slice_filter, StringTypes): slice_filter = Filter(Slice.fields, {'name':slice_filter})