Packages

trait CRUDify[KeyType, CrudType <: KeyedMapper[KeyType, CrudType]] extends Crudify

This trait automatically adds CRUD (Create, read, update and delete) operations to an existing MetaMapper object. Various methods can be overridden to customize which operations are available to a user and how things are displayed. For example, you can disable deletion of entities by overriding deleteMenuLoc to Empty.

Note: Compilation will fail if you try to mix this into a Mapper instead of the associated MetaMapper. You have been warned.

Self Type
CRUDify[KeyType, CrudType] with CrudType with KeyedMetaMapper[KeyType, CrudType]
Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CRUDify
  2. Crudify
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type FieldPointerType = MappedField[_, CrudType]

    What's a field pointer for the underlying CRUDify

    What's a field pointer for the underlying CRUDify

    Definition Classes
    CRUDifyCrudify
  2. class MyBridge extends (CRUDify.this)#CrudBridge
    Attributes
    protected
  3. class MyPointer extends (CRUDify.this)#FieldPointerBridge
    Attributes
    protected
  4. type TheCrudType = CrudType

    What's the record type for the underlying CRUDify?

    What's the record type for the underlying CRUDify?

    Definition Classes
    CRUDifyCrudify
  5. trait CrudBridge extends AnyRef

    This trait represents a Bridge between TheCrudType and the Crudify trait.

    This trait represents a Bridge between TheCrudType and the Crudify trait. It's not necessary to mix this trait into TheCrudType, but instead provide a mechanism for promoting a TheCrudType to CrudBridge

    Attributes
    protected
    Definition Classes
    Crudify
  6. trait FieldPointerBridge extends AnyRef
    Attributes
    protected
    Definition Classes
    Crudify

Abstract Value Members

  1. abstract def create: (CRUDify.this)#TheCrudType

    Vend a new instance of TheCrudType

    Vend a new instance of TheCrudType

    Definition Classes
    Crudify

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. lazy val CreateItem: String
    Definition Classes
    Crudify
  5. lazy val DeleteItem: String
    Definition Classes
    Crudify
  6. lazy val EditItem: String
    Definition Classes
    Crudify
  7. lazy val ListItems: String
    Definition Classes
    Crudify
  8. lazy val Prefix: List[String]
    Definition Classes
    Crudify
  9. lazy val ViewItem: String
    Definition Classes
    Crudify
  10. def _createTemplate: Elem

    The core template for creating.

    The core template for creating. Does not include any page wrapping.

    Definition Classes
    Crudify
  11. def _deleteTemplate: Elem

    The core template for deleting.

    The core template for deleting. Does not include any page wrapping.

    Definition Classes
    Crudify
  12. def _editTemplate: Elem

    The core template for editing.

    The core template for editing. Does not include any page wrapping.

    Attributes
    protected
    Definition Classes
    Crudify
  13. def _showAllTemplate: Elem

    The core template for showing record.

    The core template for showing record. Does not include any page wrapping

    Definition Classes
    Crudify
  14. def _viewTemplate: Elem

    The core template for viewing.

    The core template for viewing. Does not include any page wrapping.

    Definition Classes
    Crudify
  15. def addlMenuLocParams: List[AnyLocParam]

    If there are any Loc.LocParams that need to be added to every menu (e.g., a guard for access control of the Crudify screens)

    If there are any Loc.LocParams that need to be added to every menu (e.g., a guard for access control of the Crudify screens)

    Attributes
    protected
    Definition Classes
    Crudify
  16. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  17. implicit def buildBridge(from: (CRUDify.this)#TheCrudType): (CRUDify.this)#CrudBridge

    This method will instantiate a bridge from TheCrudType so that the appropriate logical operations can be performed on TheCrudType

    This method will instantiate a bridge from TheCrudType so that the appropriate logical operations can be performed on TheCrudType

    Attributes
    protected
    Definition Classes
    CRUDifyCrudify
  18. implicit def buildFieldBridge(from: (CRUDify.this)#FieldPointerType): (CRUDify.this)#FieldPointerBridge

    Based on a FieldPointer, build a FieldPointerBridge

    Based on a FieldPointer, build a FieldPointerBridge

    Attributes
    protected
    Definition Classes
    CRUDifyCrudify
  19. def calcCreateItem: String
    Definition Classes
    Crudify
  20. def calcDeleteItem: String
    Definition Classes
    Crudify
  21. def calcEditItem: String
    Definition Classes
    Crudify
  22. def calcListItems: String
    Definition Classes
    Crudify
  23. def calcPrefix: List[String]

    What's the prefix for this CRUD.

    What's the prefix for this CRUD. Typically the table name

    Definition Classes
    CRUDifyCrudify
  24. def calcViewItem: String
    Definition Classes
    Crudify
  25. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. def computeFieldFromPointer(instance: (CRUDify.this)#TheCrudType, pointer: (CRUDify.this)#FieldPointerType): Box[BaseField]

    Given a field pointer and an instance, get the field on that instance

    Given a field pointer and an instance, get the field on that instance

    Attributes
    protected
    Definition Classes
    CRUDifyCrudify
  27. def createButton: String
    Definition Classes
    Crudify
  28. def createClass: String
    Definition Classes
    Crudify
  29. def createId: String
    Definition Classes
    Crudify
  30. def createMenuLoc: Box[Menu]

    The menu item for creating items (make this "Empty" to disable)

    The menu item for creating items (make this "Empty" to disable)

    Definition Classes
    Crudify
  31. def createMenuLocParams: List[AnyLocParam]

    Override to include new Params for the create menu

    Override to include new Params for the create menu

    Definition Classes
    Crudify
  32. def createMenuName: String
    Definition Classes
    Crudify
  33. lazy val createPath: List[String]
    Definition Classes
    Crudify
  34. lazy val createPathString: String
    Definition Classes
    Crudify
  35. def createTemplate(): NodeSeq

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper.

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper.

    Definition Classes
    Crudify
  36. def crudAllNext(first: Long, list: List[(CRUDify.this)#TheCrudType]): (NodeSeq) ⇒ NodeSeq

    Override this method to change how the next link is generated

    Override this method to change how the next link is generated

    Attributes
    protected
    Definition Classes
    Crudify
  37. def crudAllPrev(first: Long): (NodeSeq) ⇒ NodeSeq

    Override this method to change how the previous link is generated

    Override this method to change how the previous link is generated

    Attributes
    protected
    Definition Classes
    Crudify
  38. def crudDoForm(item: (CRUDify.this)#TheCrudType, noticeMsg: String)(in: NodeSeq): NodeSeq
    Definition Classes
    Crudify
  39. def crudyDelete(item: (CRUDify.this)#TheCrudType): (NodeSeq) ⇒ NodeSeq

    Override this method to change how the delete screen is built

    Override this method to change how the delete screen is built

    Attributes
    protected
    Definition Classes
    Crudify
  40. def deleteButton: String
    Definition Classes
    Crudify
  41. def deleteClass: String
    Definition Classes
    Crudify
  42. def deleteId: String
    Definition Classes
    Crudify
  43. def deleteMenuLoc: Box[Menu]

    The menu item for deleting an item (make this "Empty" to disable)

    The menu item for deleting an item (make this "Empty" to disable)

    Definition Classes
    Crudify
  44. def deleteMenuLocParams: List[LocParam[(CRUDify.this)#TheCrudType]]

    Override to include new Params for the delete menu

    Override to include new Params for the delete menu

    Definition Classes
    Crudify
  45. def deleteMenuName: String
    Definition Classes
    Crudify
  46. lazy val deletePath: List[String]
    Definition Classes
    Crudify
  47. lazy val deletePathString: String
    Definition Classes
    Crudify
  48. def deleteTemplate(): NodeSeq

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper

    Definition Classes
    Crudify
  49. def displayHtml: NodeSeq
    Definition Classes
    Crudify
  50. def displayName: String
    Definition Classes
    Crudify
  51. def displayRecord(entry: (CRUDify.this)#TheCrudType): (NodeSeq) ⇒ NodeSeq

    Customize the display of records for view menu loc

    Customize the display of records for view menu loc

    Attributes
    protected
    Definition Classes
    Crudify
  52. def doCrudAll: (NodeSeq) ⇒ NodeSeq

    Override this method if you want to change the behavior of displaying records via the crud.all snippet

    Override this method if you want to change the behavior of displaying records via the crud.all snippet

    Attributes
    protected
    Definition Classes
    Crudify
  53. def doCrudAllHeaderItems: (NodeSeq) ⇒ NodeSeq

    Override this method to customize how header items are treated

    Override this method to customize how header items are treated

    Attributes
    protected
    Definition Classes
    Crudify
  54. def doCrudAllRowItem(c: (CRUDify.this)#TheCrudType): (NodeSeq) ⇒ NodeSeq

    Override this method to customize how a crudAll line is generated

    Override this method to customize how a crudAll line is generated

    Attributes
    protected
    Definition Classes
    Crudify
  55. def doCrudAllRows(list: List[(CRUDify.this)#TheCrudType]): (NodeSeq) ⇒ NodeSeq

    Override this method to determine how all the rows on a crud page are displayed

    Override this method to determine how all the rows on a crud page are displayed

    Attributes
    protected
    Definition Classes
    Crudify
  56. def doDeleteFields(item: (CRUDify.this)#TheCrudType): (NodeSeq) ⇒ NodeSeq

    Override this method to change how fields are displayed for delete

    Override this method to change how fields are displayed for delete

    Attributes
    protected
    Definition Classes
    Crudify
  57. def doDeleteSubmit(item: (CRUDify.this)#TheCrudType, from: String)(): Nothing

    Override this method to change the behavior of deleting an item

    Override this method to change the behavior of deleting an item

    Attributes
    protected
    Definition Classes
    Crudify
  58. def doDisplayRecordRow(entry: (CRUDify.this)#TheCrudType): (NodeSeq) ⇒ NodeSeq

    Customize the display of a row for displayRecord

    Customize the display of a row for displayRecord

    Attributes
    protected
    Definition Classes
    Crudify
  59. def editButton: String
    Definition Classes
    Crudify
  60. def editClass: String
    Definition Classes
    Crudify
  61. def editErrorClass: String
    Definition Classes
    Crudify
  62. def editId: String
    Definition Classes
    Crudify
  63. def editMenuLoc: Box[Menu]

    The menu item for editing an item (make this "Empty" to disable)

    The menu item for editing an item (make this "Empty" to disable)

    Definition Classes
    Crudify
  64. def editMenuLocParams: List[LocParam[(CRUDify.this)#TheCrudType]]

    Override to include new Params for the edit menu

    Override to include new Params for the edit menu

    Definition Classes
    Crudify
  65. def editMenuName: String

    The String displayed for menu editing

    The String displayed for menu editing

    Definition Classes
    Crudify
  66. lazy val editPath: List[String]
    Definition Classes
    Crudify
  67. lazy val editPathString: String
    Definition Classes
    Crudify
  68. def editTemplate(): NodeSeq

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper

    Definition Classes
    Crudify
  69. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  70. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  71. def fieldsForDisplay: List[MappedField[_, CrudType]]

    The fields to be displayed.

    The fields to be displayed. By default all the displayed fields, but this list can be shortened.

    Definition Classes
    CRUDifyCrudify
  72. def fieldsForEditing: List[(CRUDify.this)#FieldPointerType]

    The list of fields to present on a form form editing

    The list of fields to present on a form form editing

    Definition Classes
    Crudify
  73. def fieldsForList: List[(CRUDify.this)#FieldPointerType]

    The fields displayed on the list page.

    The fields displayed on the list page. By default all the displayed fields, but this list can be shortened.

    Definition Classes
    Crudify
  74. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  75. def findForList(start: Long, count: Int): List[(CRUDify.this)#TheCrudType]

    Get a List of items from the databased

    Get a List of items from the databased

    Definition Classes
    CRUDifyCrudify
  76. def findForListParams: List[QueryParam[CrudType]]

    What are the query parameters? Default to ascending on primary key

  77. def findForParam(in: String): Box[(CRUDify.this)#TheCrudType]

    Given a String that represents the primary key, find an instance of TheCrudType

    Given a String that represents the primary key, find an instance of TheCrudType

    Definition Classes
    CRUDifyCrudify
  78. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  79. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  80. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  81. lazy val listPath: List[String]
    Definition Classes
    Crudify
  82. lazy val listPathString: String
    Definition Classes
    Crudify
  83. lazy val locSnippets: DispatchLocSnippets { val dispatch: PartialFunction[String,scala.xml.NodeSeq => scala.xml.NodeSeq] }
    Definition Classes
    Crudify
  84. def menus: List[Menu]
    Definition Classes
    Crudify
  85. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  86. def nextWord: String
    Definition Classes
    Crudify
  87. final def notify(): Unit
    Definition Classes
    AnyRef
  88. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  89. def obscurePrimaryKey(in: String): String

    This method can be used to obscure the primary key.

    This method can be used to obscure the primary key. This is more secure because end users will not have access to the primary key. This method actually does the obfuscation. You can use Mapper's KeyObfuscator class to implement a nice implementation of this method for session-by-session obfuscation.

    By default, there's no obfuscation. Note that if you obfuscate the primary key, you need to update the findForParam method to accept the obfuscated keys (and translate them back.)

    Definition Classes
    Crudify
  90. def obscurePrimaryKey(in: (CRUDify.this)#TheCrudType): String

    This method can be used to obscure the primary key.

    This method can be used to obscure the primary key. This is more secure because end users will not have access to the primary key.

    Definition Classes
    Crudify
  91. def pageWrapper(body: NodeSeq): NodeSeq
    Definition Classes
    Crudify
  92. def previousWord: String
    Definition Classes
    Crudify
  93. def referer: String
    Definition Classes
    Crudify
  94. def rowsPerPage: Int

    This method defines how many rows are displayed per page.

    This method defines how many rows are displayed per page. By default, it's hard coded at 20, but you can make it session specific or change the default by overriding this method.

    Attributes
    protected
    Definition Classes
    Crudify
  95. def showAllClass: String
    Definition Classes
    Crudify
  96. def showAllId: String
    Definition Classes
    Crudify
  97. def showAllMenuLoc: Box[Menu]

    The menu item for listing items (make this "Empty" to disable)

    The menu item for listing items (make this "Empty" to disable)

    Definition Classes
    Crudify
  98. def showAllMenuLocParams: List[AnyLocParam]

    Override to include new Params for the show all menu

    Override to include new Params for the show all menu

    Definition Classes
    Crudify
  99. def showAllMenuName: String
    Definition Classes
    Crudify
  100. def showAllTemplate(): NodeSeq

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper

    Definition Classes
    Crudify
  101. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  102. def toString(): String
    Definition Classes
    AnyRef → Any
  103. def viewClass: String
    Definition Classes
    Crudify
  104. def viewId: String
    Definition Classes
    Crudify
  105. def viewMenuLoc: Box[Menu]

    The menu item for viewing an item (make this "Empty" to disable)

    The menu item for viewing an item (make this "Empty" to disable)

    Definition Classes
    Crudify
  106. def viewMenuLocParams: List[LocParam[(CRUDify.this)#TheCrudType]]

    Override to include new Params for the view menu

    Override to include new Params for the view menu

    Definition Classes
    Crudify
  107. def viewMenuName: String
    Definition Classes
    Crudify
  108. lazy val viewPath: List[String]
    Definition Classes
    Crudify
  109. lazy val viewPathString: String
    Definition Classes
    Crudify
  110. def viewTemplate(): NodeSeq

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper

    This is the template that's used to render the page after the optional wrapping of the template in the page wrapper

    Definition Classes
    Crudify
  111. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  112. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  113. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  114. def wrapNameInRequired(fieldName: NodeSeq, required: Boolean): NodeSeq

    As the field names are being displayed for editing, this method is called with the XHTML that will be displayed as the field name and a flag indicating whether the field is required.

    As the field names are being displayed for editing, this method is called with the XHTML that will be displayed as the field name and a flag indicating whether the field is required. You can wrap the fieldName in a span with a css class indicating that the field is required or otherwise do something to update the field name indicating to the user that the field is required. By default the method wraps the fieldName in a span with the class attribute set to "required_field".

    Definition Classes
    Crudify

Inherited from Crudify

Inherited from AnyRef

Inherited from Any

Ungrouped