Difference between revisions of "InstaGov/schema/question"
Jump to navigation
Jump to search
(removing unneeded fields, adding a couple more for edit-tracking purposes) |
(one more edit-tracker) |
||
Line 22: | Line 22: | ||
`WhenEdited` DATETIME DEFAULT NULL COMMENT "when this question was last edited", | `WhenEdited` DATETIME DEFAULT NULL COMMENT "when this question was last edited", | ||
`WhoEdited` VARCHAR(127) DEFAULT NULL COMMENT "username of user who last edited the question", | `WhoEdited` VARCHAR(127) DEFAULT NULL COMMENT "username of user who last edited the question", | ||
+ | `QtyEdits` INT DEFAULT NULL COMMENT "number of times this question has been edited", | ||
PRIMARY KEY(`ID`) | PRIMARY KEY(`ID`) | ||
) | ) | ||
ENGINE = MYISAM;</mysql> | ENGINE = MYISAM;</mysql> |
Revision as of 02:59, 29 December 2012
About
- Notes:
- I originally had a "WhenExpires" field as a way of making a decision at a specific time, but I decided that this belongs in a separate table (something like "decision point"). Timetable functionality feels "tacked-on", and putting it in a separate table allows keeping that feature from becoming entangled with basic voting. We might want to be able to implement, say, more than one decision-point per question.
- Not sure if we'll actually need Pos/Neg_Text; it may be just a frill.
- 2011-05-02 This entire table may be redundant. Current thinking:
- Each question is a wiki page, marked with a predetermined category.
- This makes the list of questions queryable through the category table.
- Use W3TPL to define display text, using <let name=text>text to display</let>.
- Maybe we need a way for W3TPL to store <let> data, to make it more searchable -- but that can happen later.
- (Or maybe, given the simplicity of Question data, we just use <noinclude> to delineate text which should not be shown in question lists. For now, sticking with W3TPL.)
- Makes no sense to have Pos/Neg Text; that's an Answer thing.
- 2012-12-28 Making the structure dependent on wiki pages increases platform-dependency and CPU overhead. Keep the table, make wiki page optional (it should default, at page creation time, to a calculated name which can be updated if the page is moved). We will probably need a log of edits to Answers. In fact, let's do a general log.
History
- 2012-12-28 Removing *_Text; adding Summary, WhoCreated
SQL
<mysql>CREATE TABLE `question` (
`ID` INT NOT NULL AUTO_INCREMENT, `Summary` VARCHAR(255) NOT NULL COMMENT "short description of question", `Page` VARCHAR(127) DEFAULT NULL COMMENT "optional wiki page with more information", `WhenCreated` DATETIME NOT NULL COMMENT "when this question was entered", `WhoCreated` VARCHAR(127) NOT NULL COMMENT "username of user who added the question", `WhenEdited` DATETIME DEFAULT NULL COMMENT "when this question was last edited", `WhoEdited` VARCHAR(127) DEFAULT NULL COMMENT "username of user who last edited the question", `QtyEdits` INT DEFAULT NULL COMMENT "number of times this question has been edited", PRIMARY KEY(`ID`) ) ENGINE = MYISAM;</mysql>