个人认为,只要不想放到node表里面,或者说不是node/文章类似的内容,都可以自定义entity。
Drupal7的entity就是对数据库的一个抽象,这样自定义的数据表也可以抽象成一个entity,使用entity的API以及和drupal7里面的其他数据交互,比如flag等。
而Drupal6里面,如果要自定义一个数据表,能使用api不多,也几乎不能跟其他模块交互。
====-----====
举例来说:
在Drupal6里面,我定义一个数据表:用户积分,能使用的api就是sql查询还有一个db_save_record,除此之外跟Drupal其他数据不能深度集成。
在Drupal7里面,那我就可以定义一个Entity,这个Entity就能使用entity的API,查询,显示等。也可以使用FieldAPI给其动态添加字段,另外它是一个Entity,其他模块就能跟其交互,比如flag可以给其加flag,等等。这样实现了深度集成。
比Drupal6的集成上了一个层次。
因此,我觉得只要是自定义数据都可以使用自定义entity,并且hook不是太复杂。
当然,如果是简单的内容种类或者类似文章之类的内容,直接使用node和content type就可以。
一家之言,仅供参考。