Plugin reference for developers cv : Managing career-related data of clients
previous courses : Managing courses
next deploy : Deployment management

cv : Managing career-related data of clients¶

The lino_xl.lib.cv plugin adds functionality for managing career-related information about a client which can be used for example to generate a CV (a curriculum vitae).

  • Concepts

  • Studies, trainings and work experiences

  • Education types

  • Education levels

  • Model mixins

  • ChoiceLists

  • Tables

Concepts¶

language knowledge¶

The fact that a given person knows a given language at a given degree.

Stored in the LanguageKnowledge database model.

education entry¶

A period of time where a given person has received education of a given type in a given establishment. There are two basic classes of education entries: study entries and training entries.

fr: Éducation, de: Bildung

Stored in models that inherit from the EducationEntry mixin.

work experience¶

A period of time where a given person has been working in a given organization.

fr: Expérience professionnelle, de: Berufserfahrung

study entry¶

An education entry with mostly theoretical lessons.

fr: Études, de: Studium

training entry¶

An education entry with more practical work than theoretical lessons. There is no school.

fr: Formation, de: Ausbildung

education type¶

A type of education. See Education types.

Stored in a model called StudyType for historical reasons.

work status¶

The legal status of a work experience. Stored in Status.

work regime¶

The number of hours per week of a work experience. Stored in Regime.

contract duration¶

The duration of the contract of a work experience. Stored in Duration.

job title¶

Stored in Function.

activity sector¶

Stored in Sector.

This is a tested document. The following instructions are used for initialization:

>>> from lino import startup
>>> startup('lino_book.projects.min9.settings')
>>> from lino.api.doctest import *

Studies, trainings and work experiences¶

class lino_xl.lib.cv.Study¶

Django model representing a study entry.

education_level¶

Pointer to EducationLevel.

content¶

Free-text description of the content.

class lino_xl.lib.cv.Training¶

Django model representing a training entry.

content¶

Describes the content of this training. A free one-line text field.

class lino_xl.lib.cv.Experience¶

Django model representing a work experience.

>>> UserTypes = rt.models.users.UserTypes
>>> AllLanguageKnowledges = rt.models.cv.AllLanguageKnowledges
>>> a = UserTypes.admin
>>> a
<users.UserTypes.admin:900>
>>> u = UserTypes.user
>>> u
<users.UserTypes.user:100>
>>> AllLanguageKnowledges.required_roles == {cv.CareerStaff}
True
>>> AllLanguageKnowledges.default_action.get_view_permission(u)
False
>>> AllLanguageKnowledges.default_action.get_view_permission(a)
False
class lino_xl.lib.cv.LanguageKnowledge¶

Django model to represent a language knowledge.

person¶

The person to which this entry applies.

language¶

The language to which this entry applies.

spoken¶
written¶
spoken_passively¶
written_passively¶
native¶
cef_level¶

The CEF level. A pointer to a choice of CefLevels

has_certificate¶

Whether this entry is confirmed by a certificate.

entry_date¶

When this entry was created.

Education types¶

Lino has a configurable list of education types that can be used to group education entries according to their type.

class lino_xl.lib.cv.StudyType¶

Django model representing an education type.

TODO: Rename this to EducationType.

Also used in isip.Contract.study_type and by EducationEntry.type.

education_level¶

Pointer to EducationLevel.

study_regime¶

Pointer to StudyRegimes.

Inherits from StudyOrTraining.

>>> rt.show(cv.StudyTypes)
==== ================= ==================== ======================= ======= ========== =================
 ID   Designation       Designation (de)     Designation (fr)        Study   Training   Education Level
---- ----------------- -------------------- ----------------------- ------- ---------- -----------------
 11   Alpha             Alpha                Alpha                   No      Yes
 4    Apprenticeship    Lehre                Apprentissage           Yes     No
 5    Highschool        Hochschule           École supérieure        Yes     No
 7    Part-time study   Teilzeitunterricht   Cours à temps partiel   Yes     No
 9    Prequalifying     Prequalifying        Préqualification        No      Yes
 10   Qualifying        Qualifying           Qualification           No      Yes
 8    Remote study      Fernkurs             Cours à distance        Yes     No
 1    School            Schule               École                   Yes     No
 2    Special school    Sonderschule         École spéciale          Yes     No
 3    Training          Ausbildung           Formation               Yes     No
 6    University        Universität          Université              Yes     No
==== ================= ==================== ======================= ======= ========== =================

Education levels¶

class lino_xl.lib.cv.EducationLevel¶

Inherits from StudyOrTraining

>>> rt.show(cv.EducationLevels)
============= ================== ================== ======= ==========
 Designation   Designation (de)   Designation (fr)   Study   Training
------------- ------------------ ------------------ ------- ----------
 Bachelor      Bachelor           Bachelor           Yes     No
 Higher        Hochschule         Supérieur          Yes     No
 Master        Master             Master             Yes     No
 Primary       Primär             Primaire           Yes     No
 Secondary     Sekundär           Secondaire         Yes     No
============= ================== ================== ======= ==========
class lino_xl.lib.cv.Status¶

Django model representing a work status.

>>> rt.show(cv.Statuses)
==== ============= ================== ==================
 ID   Designation   Designation (de)   Designation (fr)
---- ------------- ------------------ ------------------
 2    Employee      Angestellter       Employé
 3    Freelancer    Selbstständiger    Indépendant
 7    Interim       Interim            Intérim
 6    Laboratory    Laboratory         Stage
 5    Student       Student            Étudiant
 4    Voluntary     Ehrenamtlicher     Bénévole
 1    Worker        Arbeiter           Ouvrier
==== ============= ================== ==================
class lino_xl.lib.cv.Regime¶

Django model representing a work regime.

>>> rt.show(cv.Regimes)
==== ============= ================== ==================
 ID   Designation   Designation (de)   Designation (fr)
---- ------------- ------------------ ------------------
 1    Full-time     Vollzeit           Temps-plein
 3    Other         Sonstige           Autre
 2    Part-time     Teilzeit           Temps partiel
==== ============= ================== ==================
class lino_xl.lib.cv.Duration¶

Django model representing a contract duration.

>>> rt.show(cv.Durations)
==== ===================== ===================== ==========================
 ID   Designation           Designation (de)      Designation (fr)
---- --------------------- --------------------- --------------------------
 3    Clearly defined job   Clearly defined job   Travail nettement défini
 5    Interim               Interim               Intérim
 2    Limited duration      Beschränkte Dauer     Durée déterminée
 4    Replacement           Ersatz                Contrat de remplacement
 1    Unlimited duration    Unbeschränkte Dauer   Durée indéterminée
==== ===================== ===================== ==========================
class lino_xl.lib.cv.Sector¶

Django model representing an activity sector.

class lino_xl.lib.cv.Function¶

Django model representing a job title.

For data examples see the specs of Lino Welfare.

Model mixins¶

class lino_xl.lib.cv.StudyOrTraining¶

Model mixin inherited by EducationLevel and StudyType.

is_study¶

Whether education entries are considered a study entry.

is_training¶

Whether education entries are considered a training entry.

class lino_xl.lib.cv.PersonHistoryEntry¶

Base class for Study, Training and Experience.

Inherits from lino.mixins.period.DateRange.

person¶

The person to whom this entry applies. Pointer to Plugin.person_model.

start_date¶

When this entry started.

end_date¶

When this entry ended.

duration_text¶

Free-text description of the duration of this entry.

class lino_xl.lib.cv.EducationEntry¶

Model mixin to represent an education entry. Inherited by Training and Study.

language¶

Foreign key to lino.modlib.languages.Language.

school¶

The establishment where the education happened.

state = EducationEntryStates.field(blank=True)

Choicelist field to EducationEntryStates.

remarks¶

Remarks about this entry.

type¶

Pointer to StudyType.

class lino_xl.lib.cv.BiographyOwner¶

Model mixin usually inherited by the Plugin.person_model. It adds a few virtual fields.

language_knowledge¶

A summary of the language knowledges of this person.

mother_tongues¶
cef_level_en¶
cef_level_de¶
cef_level_fr¶

ChoiceLists¶

class lino_xl.lib.cv.HowWell¶

A list of possible answers to questions of type "How well ...?": "not at all", "a bit", "moderate", "quite well" and "very well" which are stored in the database as '0' to '4', and whose __str__() returns their translated text.

>>> rt.show(cv.HowWell)
======= ========= ============
 value   name      text
------- --------- ------------
 0                 not at all
 1                 a bit
 2       default   moderate
 3                 quite well
 4                 very well
======= ========= ============
class lino_xl.lib.cv.CefLevel¶

Levels of the Common European Framework of Reference (CEFR) for Languages.

See also https://www.coe.int/en/web/language-policy/home

>>> rt.show(cv.CefLevel)
======= ====== ======
 value   name   text
------- ------ ------
 A0             A0
 A1             A1
 A1+            A1+
 A2             A2
 A2+            A2+
 B1             B1
 B2             B2
 B2+            B2+
 C1             C1
 C2             C2
 C2+            C2+
======= ====== ======
class lino_xl.lib.cv.EducationEntryStates¶

The possible states of an education entry.

>>> rt.show(cv.EducationEntryStates)
======= ========= =========
 value   name      text
------- --------- ---------
 0       success   Success
 1       failure   Failure
 2       ongoing   Ongoing
======= ========= =========

Tables¶

class lino_xl.lib.cv.HistoryByPerson¶

Table mixin for StudiesByPerson and ExperiencesByPerson.

Makes the start_date of a new entry automatically default to the end_date of the previous entry.

class lino_xl.lib.cv.SectorFunction¶

Model mixin for entries that refer to a Sector and a Function.

sector¶

Pointer to the Sector.

function¶

Pointer to the Function.

Logo

Table of Contents

  • Welcome
  • Get started
  • Developer Guide
  • Contributor Guide
  • More about Lino
  • Reference
    • Topics
    • Plugin reference for developers
    • Demo projects
    • Privileged applications
    • Repositories
    • Bash commands
    • Field types
    • Miscellaneous reference pages
  • API
  • Changes
  • News

Quick search

  • General Index
  • Python Module Index

previous courses : Managing courses
next deploy : Deployment management
© Copyright 2002-2023 Rumma & Ko Ltd. Last updated on 2023-01-26. Created using Sphinx 5.1.1. Insipid Theme. Source code.
Online link: https://dev.lino-framework.org/specs/cv.html.