Bläddra i källkod

[fix] validate sort_field in doctype.py

version-14
Rushabh Mehta 8 år sedan
förälder
incheckning
c8a80786e3
1 ändrade filer med 10 tillägg och 6 borttagningar
  1. +10
    -6
      frappe/core/doctype/doctype/doctype.py

+ 10
- 6
frappe/core/doctype/doctype/doctype.py Visa fil

@@ -9,7 +9,7 @@ import frappe
from frappe import _

from frappe.utils import now, cint
from frappe.model import no_value_fields
from frappe.model import no_value_fields, default_fields
from frappe.model.document import Document
from frappe.custom.doctype.property_setter.property_setter import make_property_setter
from frappe.desk.notifications import delete_notification_count_for
@@ -419,7 +419,6 @@ def validate_fields(meta):
if not meta.search_fields:
return

fieldname_list = [d.fieldname for d in fields]
for fieldname in (meta.search_fields or "").split(","):
fieldname = fieldname.strip()
if fieldname not in fieldname_list:
@@ -430,8 +429,6 @@ def validate_fields(meta):
if not meta.get("title_field"):
return

fieldname_list = [d.fieldname for d in fields]

if meta.title_field not in fieldname_list:
frappe.throw(_("Title field must be a valid fieldname"), InvalidFieldNameError)

@@ -469,8 +466,6 @@ def validate_fields(meta):
if not meta.timeline_field:
return

fieldname_list = [d.fieldname for d in fields]

if meta.timeline_field not in fieldname_list:
frappe.throw(_("Timeline field must be a valid fieldname"), InvalidFieldNameError)

@@ -478,7 +473,15 @@ def validate_fields(meta):
if df.fieldtype not in ("Link", "Dynamic Link"):
frappe.throw(_("Timeline field must be a Link or Dynamic Link"), InvalidFieldNameError)

def check_sort_field(meta):
if meta.sort_field:
if not meta.sort_field in fieldname_list + list(default_fields):
frappe.throw(_("Sort field must be a valid fieldname"), InvalidFieldNameError)


fields = meta.get("fields")
fieldname_list = [d.fieldname for d in fields]

not_allowed_in_list_view = list(copy.copy(no_value_fields))
if meta.istable:
not_allowed_in_list_view.remove('Button')
@@ -502,6 +505,7 @@ def validate_fields(meta):
check_search_fields(meta)
check_title_field(meta)
check_timeline_field(meta)
check_sort_field(meta)

def validate_permissions_for_doctype(doctype, for_remove=False):
"""Validates if permissions are set correctly."""


Laddar…
Avbryt
Spara