我是PyroCMS的新手,我愿意建立一个招聘网站,其中有2个主要用户,即雇主和求职者。为了允许他们在网站上注册,我使用PyroCMS的Streams API来构建表单。这些用户将成为2个不同模块的一部分,即雇主模块和求职者模块。
在details.php文件中,在install()函数下,我想创建多个流(数据库表)。以下代码可帮助我们添加流:
$this->streams->streams->add_stream();
以下代码可帮助我们定义要添加到流中的字段:
$this->streams->fields->add_fields($fields);
我关心的是如何添加多个像上面的流,并为每个流添加字段?换句话说,语法将如何
$this->streams->fields->add_fields($fields);
知道要将字段添加到哪个流?
答案 0 :(得分:0)
查看Streams API的Fields Driver文档。字段和流是单独的实体,两者之间没有必需的关联。添加字段时,您可以将其分配给如下所示的流:
$field = array(
'name' => 'Question',
'slug' => 'question',
'namespace' => 'streams_sample',
'type' => 'text',
'extra' => array('max_length' => 200),
'assign' => 'STREAM_SLUG_GOES_HERE',
'title_column' => true,
'required' => true,
'unique' => true
);
$this->streams->fields->add_field($field);
或者您可以单独创建流和字段,然后将每个字段分配给如下所示的流:
$this->streams->fields->assign_field('streams_sample', 'STREAM_SLUG_GOES_HERE', 'question', array('required' => true));
所有关于田野和溪流的谈话都让我想出去......
答案 1 :(得分:0)
您可以添加多个流,例如此示例。
// Add banners streams
if ( ! $this->streams->streams->add_stream(lang('banner:banners'), 'banners', 'banner', 'banner_', null)) return false;
// Add groups streams
if ( ! $this->streams->streams->add_stream(lang('banner:groups'), 'groups', 'banner', 'banner_', null)) return false;
// Add some fields
$fields = array(
// BANNERS
array(
'name' => 'Banner Title',
'slug' => 'banner_title',
'namespace' => 'banner',
'assign' => 'banners',
'type' => 'text',
'extra' => array('max_length' => 200),
'title_column' => true,
'required' => true,
'unique' => true
),
// GROUPS
array(
'name' => 'Group Title',
'slug' => 'group_title',
'namespace' => 'banner',
'assign' => 'groups',
'type' => 'text',
'extra' => array('max_length' => 200),
'title_column' => true,
'required' => true,
'unique' => true
)
);
$this->streams->fields->add_fields($fields);