添加用户后输入HABTM详细信息


Input HABTM details after adding a user

我有一个基于CakePHP的应用程序正在开发中,它在Moodle支持的大学中充当用户管理工具,并连接到Moodle的数据库。因此,我们将拥有的模型是:UsersGroups(用作学年,如第二定律Courses(用作独特科目,如"第三IT的数据库管理II")

此应用程序仅供管理员使用,管理员每年都会根据需要添加新用户并更新现有用户。在已经填充了组列表后,管理员应该浏览到/users/add/,输入用户详细信息,然后当单击"保存"而不是返回到学生列表时,应该要求他选择要招收学生的组(例如,建筑系一年级、医学系三年级…),这又将他添加到CCD_ 4和CCD_。然而,由于我还没有完全理解MVC的全部内容,我不确定从哪里开始,因为我似乎没有找到合适的示例和文档。

在编辑用户时,我想我会放一些按钮,让用户在下一年注册等任务变得更容易、更快,但这是我稍后在基本功能正常工作时会担心的事情。

下面是我的一些文件,它们非常基本。

用户/add.ctp

<h1>Add User</h1>
<?php
echo $this->Form->create('User');
echo $this->Form->input('username');
echo $this->Form->input('password');
echo $this->Form->input('name');
echo $this->Form->input('surname');
echo $this->Form->input('email');
echo $this->Form->input('role'); // Student or Teacher
echo $this->Form->end('Save User');
?>

UsersController.php的一部分

    public function add() { 
    if ($this->request->is('post')) {
        $this->User->create();
        if ($this->User->save($this->request->data)) {
            $this->Session->setFlash(__('Your user has been saved.'));
            return $this->redirect(array('action' => 'index')); <!-- There would be a link to the enrolment page here? -->
        }
        $this->Session->setFlash(__('Unable to add your user.'));
    }
}

我真的不知道如何将Users模型与Group模型联系起来,所以添加用户之后,通过选择年份来添加主题

哇,好吧,你的工作很艰巨。

从这里开始。阅读整页(实际操作):http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html

下一步到这里,再次阅读整件事:http://book.cakephp.org/2.0/en/models/saving-your-data.html

最后,转到此处并阅读所有内容:http://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html

在解释MVC以及如何链接数据方面,我做得再好不过了,但我几乎每天都会使用我发给你的三个页面来完成我的工作。你需要仔细研究所有这些问题,但一旦你做到了,你就会明白你需要做什么来解决你的问题。祝你好运,总共只有30页左右,所以没什么太疯狂的。

我相信Moodle中已经有了这个功能。

用户可以分为一组:

http://docs.moodle.org/26/en/Cohorts

然后使用队列同步注册插件自动注册课程:

http://docs.moodle.org/26/en/Cohort_sync