The article table news has a field status. Why should I create another table to copy an article in the audit status to this audit table and directly modify the status field of the article table? News12 is the field status {code ...} content_check7 is the field status {code ...} the article table news has a field status. Why should I create another table to copy an article in the audit status to this audit table and directly modify the status field of the article table?
News 12 is the field status
1 id mediumint(8) UNSIGNED 2 catid smallint(5) UNSIGNED 3 typeid smallint(5) UNSIGNED 4 title varchar(200) utf8_general_ci 5 style char(24) utf8_general_ci 6 thumb varchar(100) utf8_general_ci 7 keywords varchar(80) utf8_general_ci 8 description mediumtext utf8_general_ci 9 posids tinyint(1) UNSIGNED 10 url char(100) utf8_general_ci 11 listorder tinyint(3) UNSIGNED 12 status tinyint(2) UNSIGNED 13 sysadd tinyint(1) UNSIGNED 14 islink tinyint(1) UNSIGNED 15 username char(20) utf8_general_ci 16 inputtime int(10) UNSIGNED 17 updatetime int(10) UNSIGNED
Content_check 7 is the field status
1 checkid char(15) utf8_general_ci 2 catid smallint(5) UNSIGNED 3 siteid smallint(5) UNSIGNED 4 title char(80) utf8_general_ci 5 username char(20) utf8_general_ci 6 inputtime int(10) UNSIGNED 7 status tinyint(1)
Reply content:
The article table news has a field status. Why should I create another table to copy an article in the audit status to this audit table and directly modify the status field of the article table?
News 12 is the field status
1 id mediumint(8) UNSIGNED 2 catid smallint(5) UNSIGNED 3 typeid smallint(5) UNSIGNED 4 title varchar(200) utf8_general_ci 5 style char(24) utf8_general_ci 6 thumb varchar(100) utf8_general_ci 7 keywords varchar(80) utf8_general_ci 8 description mediumtext utf8_general_ci 9 posids tinyint(1) UNSIGNED 10 url char(100) utf8_general_ci 11 listorder tinyint(3) UNSIGNED 12 status tinyint(2) UNSIGNED 13 sysadd tinyint(1) UNSIGNED 14 islink tinyint(1) UNSIGNED 15 username char(20) utf8_general_ci 16 inputtime int(10) UNSIGNED 17 updatetime int(10) UNSIGNED
Content_check 7 is the field status
1 checkid char(15) utf8_general_ci 2 catid smallint(5) UNSIGNED 3 siteid smallint(5) UNSIGNED 4 title char(80) utf8_general_ci 5 username char(20) utf8_general_ci 6 inputtime int(10) UNSIGNED 7 status tinyint(1)
The number of articles to be reviewed is certainly not large, but there may be a lot of articles in the article table, or even a sub-table is required.
It is of little significance to look at the table structure separately, and I have never used phpcms. I think this may be to make it easier to expand the audit mechanism.
For example, if a publication uses phpcms to publish an electronic version, the text should be reviewed by the leader, deputy editor, and editor-in-chief. In a similar case:
First, from the perspective of permission control, permission management becomes clearer after table sharding. The audit permission does not include modification to the original text, and the edited original text does not pollute the audited data.
Second, the reviewer can comment on the content, because it is a copy of the content, so it does not affect the original text.
Finally, the table has an independent status field, which can be extended for preliminary review, review, appeal and other review processes.
In addition, some cms also stores drafts independently. In fact, there is no special problem between good and bad. I think it is related to the designer's character. Some people like to concentrate on the problem and solve the problem quickly. Some people like to scatter the problem and avoid the overlay of complexity to weaken the control of the project development progress. Just like a review table, you can complete the scheduled task without creating a separate table, that is, the program logic is much more complicated.