Php 拉威尔:可以';不要将数据保存到表中

Php 拉威尔:可以';不要将数据保存到表中,php,html,laravel,Php,Html,Laravel,我想在我的令牌表中保存令牌: My TokenController.php的存储方法如下所示: public function store() { $user = Sentry::getUser(); $user = User::with('tokens')->where('id', $user->id)->first(); Token::create([ 'user_id' => $user->id,

我想在我的令牌表中保存令牌:

My TokenController.php的存储方法如下所示:

public function store() {

    $user = Sentry::getUser();
    $user = User::with('tokens')->where('id', $user->id)->first();

    Token::create([
        'user_id'     => $user->id,
        'name'        => Input::get('tokenname'),
        'description' => 'whatever',
        'tag'         => 'whatever1',
    ]);
这是我视图中的表,它将数据发送到store方法:

    <table>
    {{Form::open(array('route' => array('admin.referencing.store', $user->id), 'method' => 'POST', 'id'=>'tokenCreateForm'))}}

        <div class="form-group">
            {{ Form::input('number', 'numberoftokens', false, array('placeholder' => 'Number of Tokens', 'id' => 'numberoftokens')) }} 
        </div>

        <div class="form-group">
            {{ Form::input('text', 'tokenname', false, array('placeholder' => 'Name of Token', 'id' => 'tokenname')) }} 
        </div>

        <div class="form-group">
            {{ Form::input('text', 'tokendescription', false, array('placeholder' => 'Description', 'id' => 'tokendescription')) }} 
        </div>

        <div class="form-group">
            {{ Form::input('text', 'tokentag', false, array('placeholder' => 'Tag', 'id' => 'tokentag')) }} 
        </div>

        <div class="form-group">
            <button class="btn btn-primary" type="submit">
                <i class="fa fa-save"></i>
                Create
            </button>
        </div>

    {{Form::close()}}
    </table>
奇怪的是,我的种子文件将所有内容完美地保存在我的表中:

我的令牌表种子:

 class TokenTableSeeder extends Seeder {

    public function run()
    {
        $faker = Faker::create();

        Token::truncate();

        foreach(range(1, 10) as $index)
        {
            Token::create([
                'user_id'     => rand(1,4),
                'name'        => $faker->country,
                'description' => $faker->name,
                'tag'         => rand(1,4)
            ]);
        }
    }

}
所以,这真的很奇怪,因为名字保存得很好,但没有“描述”和“标记”,所以在我的播种机准备好并且我手动创建标记之后,所有东西都保存了,除了描述和标记

下面是它的样子:

似乎只有一个字写错了,但我检查了一百遍,找不到原因,为什么没有保存

非常感谢您的帮助

亲切问候,


George

为了在模型上使用
创建
方法,必须使用
可填充
属性指定要设置的属性


我不知道为什么它可以用于播种,但不能用于生产代码。也许种子设定不知何故绕过了
create
方法,只是直接将值写入数据库。

只是暗中捅了一刀。。。您是否在令牌模型上定义了
$filleble
属性?(). 我不知道为什么它会适用于种子,但不适用于生产代码,但也许种子只是工作方式不同而已?谢谢。如果您使用以前由其他人生成的代码,就会发生这种情况。你能写下你的评论作为解决方案吗,因为我想检查它是否正确。确实是模型,具有静态可填充特性。非常感谢,我会的。很高兴我能帮忙。
 class TokenTableSeeder extends Seeder {

    public function run()
    {
        $faker = Faker::create();

        Token::truncate();

        foreach(range(1, 10) as $index)
        {
            Token::create([
                'user_id'     => rand(1,4),
                'name'        => $faker->country,
                'description' => $faker->name,
                'tag'         => rand(1,4)
            ]);
        }
    }

}