[drupal-devel] [feature] Multiple simple nodes

m3avrck drupal-devel at drupal.org
Mon Aug 29 18:13:19 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:   m3avrck
 Status:       patch (code needs review)

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?




m3avrck



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!







More information about the drupal-devel mailing list