survey.question :: Survey Question

Questions that will be asked in a survey. Each question can have one of more suggested answers (eg. in case of multi-answer checkboxes, radio buttons...). Technical note: survey.question is also the model used for the survey's pages (with the "is_page" field set to True). A page corresponds to a "section" in the interface, and the fact that it separates the survey in actual pages in the interface depends on the "questions_layout" parameter on the survey.survey model. Pages are also used when randomizing questions. The randomization can happen within a "page". Using the same model for questions and pages allows to put all the pages and questions together in a o2m field (see survey.survey.question_and_page_ids) on the view side and easily reorganize your survey by dragging the items around. It also removes on level of encoding by directly having 'Add a page' and 'Add a question' links on the list view of questions, enabling a faster encoding. However, this has the downside of making the code reading a little bit more complicated. Efforts were made at the model level to create computed fields so that the use of these models still seems somewhat logical. That means: - A survey still has "page_ids" (question_and_page_ids filtered on is_page = True) - These "page_ids" still have question_ids (questions located between this page and the next) - These "question_ids" still have a "page_id" That makes the use and display of these information at view and controller levels easier to understand.

Fields

  • allowed_triggering_question_ids [readonlymany2many: survey.question]: Allowed Triggering Questions

  • answer_date [date]: Correct date answer

  • answer_datetime [datetime]: Correct datetime answer

  • answer_numerical_box [float]: Correct numerical answer

  • answer_score [float]: Score

  • background_image [binary]: Background Image

  • background_image_url [readonlychar]: Background Url

  • comment_count_as_answer [boolean]: Comment is an answer

  • comments_allowed [boolean]: Show Comments Field

  • comments_message [char]: Comment Message

  • constr_error_msg [char]: Error message

  • constr_mandatory [boolean]: Mandatory Answer

  • create_date [readonlydatetime]: Created on

  • create_uid [readonlymany2one: res.users]: Created by

  • description [html]: Description

  • display_name [readonlychar]: Display Name

  • has_image_only_suggested_answer [readonlyboolean]: Has image only suggested answer

  • id [readonlyinteger]: ID

  • is_page [boolean]: Is a page?

  • is_placed_before_trigger [readonlyboolean]: Is misplaced?

  • is_scored_question [boolean]: Scored

  • is_time_customized [boolean]: Customized speed rewards

  • is_time_limited [boolean]: The question is limited in time

  • matrix_row_ids [one2many: survey.question.answer]: Matrix Rows

  • matrix_subtype [selection]: Matrix Type

  • page_id [readonlymany2one: survey.question]: Page

  • question_ids [readonlyone2many: survey.question]: Questions

  • question_placeholder [char]: Placeholder

  • question_type [selection]: Question Type

  • questions_selection [readonlyselection]: Question Selection

  • random_questions_count [integer]: # Questions Randomly Picked

  • save_as_email [boolean]: Save as user email

  • save_as_nickname [boolean]: Save as user nickname

  • scale_max [integer]: Scale Maximum Value

  • scale_max_label [char]: Scale Maximum Label

  • scale_mid_label [char]: Scale Middle Label

  • scale_min [integer]: Scale Minimum Value

  • scale_min_label [char]: Scale Minimum Label

  • scoring_type [readonlyselection]: Scoring Type

  • sequence [integer]: Sequence

  • session_available [readonlyboolean]: Live Session available

  • suggested_answer_ids [one2many: survey.question.answer]: Types of answers

  • survey_id [many2one: survey.survey]: Survey

  • survey_session_speed_rating [readonlyboolean]: Reward quick answers

  • survey_session_speed_rating_time_limit [readonlyinteger]: General Time limit (seconds)

  • time_limit [integer]: Time limit (seconds)

  • title [requiredchar]: Title

  • triggering_answer_ids [many2many: survey.question.answer]: Triggering Answers

  • triggering_question_ids [readonlymany2many: survey.question]: Triggering Questions

  • user_input_line_ids [one2many: survey.user_input.line]: Answers

  • validation_email [boolean]: Input must be an email

  • validation_error_msg [char]: Validation Error

  • validation_length_max [integer]: Maximum Text Length

  • validation_length_min [integer]: Minimum Text Length

  • validation_max_date [date]: Maximum Date

  • validation_max_datetime [datetime]: Maximum Datetime

  • validation_max_float_value [float]: Maximum value

  • validation_min_date [date]: Minimum Date

  • validation_min_datetime [datetime]: Minimum Datetime

  • validation_min_float_value [float]: Minimum value

  • validation_required [boolean]: Validate entry

  • write_date [readonlydatetime]: Last Updated on

  • write_uid [readonlymany2one: res.users]: Last Updated by