如何控制要在$ form->输入中显示的内容(文本)?

时间:2011-05-11 20:46:21

标签: php cakephp

人。 我从CakePHP开始并在查看本教程后( http://book.cakephp.org/view/1543/Simple-Acl-controlled-Application 并且在使用“cake bake”命令生成我的之后 楷模, 控制器和视图,一切都很好,但当我访问 发布的添加视图(views \ posts \ add.php),我发现不是为了显示输入文本 用户名,显示包含所有用户名的选择。

这是Post的添加视图中显示选择的行。

echo $this->Form->input('user_id');

PostsController

function add() {
// Some other code  
    $users = $this->Post->User->find('list');
    $this->set(compact('users'));
}

虽然我知道如何只显示当前的用户名 登录用户,我不知道如何控制要显示的内容 $ this-> Form-> input()因为如果我使用的是不属于的变量 显示“Post”模型,但作为输入的标签。

你知道如何解决这个问题吗?

P.S。我一直试图在食谱上找到这些信息,但我找不到任何具体的情况:(

2 个答案:

答案 0 :(得分:1)

我想帮助你做这件事。

首先,如果需要文本框,则必须定义输入字段的类型。

echo $form->input('user_id', array('type'=>'text', 'label'=false));

我希望这会对你有所帮助。

答案 1 :(得分:1)

如果要添加字符串作为输入值,请尝试:

echo $form->input('my label text',array('value'=>'the value string','type'=>'hidden')); 

这会使输入隐藏,并设置值 或者删除type=>hidden,它会有一个值,您也可以在其中添加disabled等内容,或者修改它创建的div,使用div'=>array()和将您的div选项放在该数组中...希望这会有所帮助。