[drupal-devel] [feature] Multiple simple nodes
chx
drupal-devel at drupal.org
Mon Aug 29 21:51:33 UTC 2005
Issue status update for
http://drupal.org/node/29794
Post a follow up:
http://drupal.org/project/comments/add/29794
Project: Drupal
Version: cvs
Component: node system
Category: feature requests
Priority: normal
Assigned to: chx
Reported by: chx
Updated by: chx
Status: patch (code needs review)
CREATE TABLE node_type (
type varchar(31) NOT NULL default '',
name varchar(255) NOT NULL default '',
description mediumtext NOT NULL,
help mediumtext NOT NULL,
PRIMARY KEY (type_name)
) TYPE=MyISAM;
We can talk about the menu placement when it's in. That's something
that can tweaked after the freeze.
chx
Previous comments:
------------------------------------------------------------------------
Sat, 27 Aug 2005 11:34:39 +0000 : chx
Attachment: http://drupal.org/files/issues/simplenode.module (9.09 KB)
Instead of page, story etc let's have a module with which you can add
simple body only nodes. At least moshe and I frequently copy
story.module to have a new simple module. For example, event needs
this. For permissions it's great to have multiple node types. So I
downloaded a copy of content.module from CCK, pressed delete a lot,
copied hook_form from story and then rename the stuff to
simplenode.module. Then I reviewed the thing but it was really not
much, so credit goes to JonBob and jvandyk.
MySQL is:
CREATE TABLE node_type (
type_name varchar(31) NOT NULL default '',
label varchar(255) NOT NULL default '',
description mediumtext NOT NULL,
help mediumtext NOT NULL,
PRIMARY KEY (type_name)
) TYPE=MyISAM;
------------------------------------------------------------------------
Sat, 27 Aug 2005 11:44:09 +0000 : chx
Attachment: http://drupal.org/files/issues/simplenode_0.module (8.81 KB)
To save a couple hundred bytes of code and also a lot in DB I removed
hard caching of node types. It's surely needed for CCK, not for us.
------------------------------------------------------------------------
Sat, 27 Aug 2005 13:02:49 +0000 : kbahey
+1.
This is something needed a lot and will save a lot of code duplication,
and tricks like two stub event sumodules.
since CCK will not make it to 4.7, this is the way to go.
------------------------------------------------------------------------
Sat, 27 Aug 2005 15:03:24 +0000 : Cvbge
Please change the file name extension, as now it's hard to download.
Maybe we could make type_name longer? 64 or even 128 seems practical
(hell, it's VARCHAR, there should be no difference between 31 and 255).
I've skimmed sql part of module, you do INSERT INTO {node_type}
(type_name, label, description) VALUES ('%s', '%s', '%s'), what about
help column? It's NOT NULL, has no DEFAULT and you don't provide any
value for it.
The SELECT * FROM {node_type} nt WHERE 1 ORDER BY nt.type_name ASC
won't work in postgres, you need to change WHERE 1 to for example WHERE
1=1. Why do you need WHERE anyway?
------------------------------------------------------------------------
Sat, 27 Aug 2005 15:04:31 +0000 : Eaton
+1 I'm very much in favor of it. Already using it in a site I'm mocking
up.
------------------------------------------------------------------------
Sat, 27 Aug 2005 15:16:08 +0000 : chx
Attachment: http://drupal.org/files/issues/simplenode.module.txt (8.84 KB)
------------------------------------------------------------------------
Sat, 27 Aug 2005 15:21:14 +0000 : jvandyk
Cvbge, no need to make type_name longer. We just changed this [1] to go
from 8 to 32 chars.
Maybe you're thinking of the label field, which is already 255.
Please keep this as compatible as possible with CCK. Download CCK from
CVS, add a new content type and see how it works.
[1] http://drupal.org/node/27985
------------------------------------------------------------------------
Sat, 27 Aug 2005 15:39:18 +0000 : chx
Attachment: http://drupal.org/files/issues/simplenode.module_0.txt (8.85 KB)
------------------------------------------------------------------------
Sat, 27 Aug 2005 15:47:15 +0000 : Cvbge
@#6:
I was thinking about type_name (as posted in the first issue post). I
assume that it's displayed somewhere on the page. If it is shown to
normal user, one who browses the web page, it contains/can contain
informative content. As such, I think we should not limit the admin to
31 characters.
If it is not shown to users, then 31 characters is probably enough.
------------------------------------------------------------------------
Sat, 27 Aug 2005 16:04:01 +0000 : jvandyk
type_name is the internal name. It is used in urls like node/add/foo
where type_name is foo. The foo content type also has a friendly name
called label. Note the second column in the table. The label is used
when displaying to the user.
------------------------------------------------------------------------
Sun, 28 Aug 2005 21:48:26 +0000 : chx
Attachment: http://drupal.org/files/issues/content.module.txt (8.59 KB)
Upon Dries word, this module is called content. I have fiddled with
field names and such to be more in line with current node.module.
------------------------------------------------------------------------
Sun, 28 Aug 2005 21:50:55 +0000 : chx
Attachment: http://drupal.org/files/issues/content.module_0.txt (8.57 KB)
Also, Dries said that he'd like to see "create $type content" instad of
'create '. $type .' content'. Who am I disagree with easier to read and
shorter code?
------------------------------------------------------------------------
Sun, 28 Aug 2005 21:51:44 +0000 : kbahey
But isn't the name "content" going to be used by the CCK module?
------------------------------------------------------------------------
Sun, 28 Aug 2005 21:56:26 +0000 : chx
I think I told Dries that CCK is already called content....
------------------------------------------------------------------------
Mon, 29 Aug 2005 18:07:29 +0000 : m3avrck
Getting this error:
user error: Unknown column 'nt.type' in 'order clause'
query: SELECT * FROM node_type nt ORDER BY nt.type ASC
Seems line 266 should be type_name and not type. Or is the SQL create
wrong?
------------------------------------------------------------------------
Mon, 29 Aug 2005 18:11:11 +0000 : m3avrck
Also getting this error which is related:
user error: Unknown column 'type' in 'field list'
query: INSERT INTO node_type (type, name, description, help) VALUES
('story_asdfad', 'new_story', '', '')
Line 185. What is the correct SQL create code? Or is the module code
wrong? Please clarify!
------------------------------------------------------------------------
Mon, 29 Aug 2005 18:13:17 +0000 : m3avrck
Also, the settings is a bit confusing because Drupal already has
Settings > Content-Types ... and now there is Content > Content-Types
... confusing as to what the difference is for each. Also, should the
settings for this module go under Settings or be part of the main
Administer menu?
More information about the drupal-devel
mailing list