首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将空行存储在数据库中?

将空行存储在数据库中?
EN

Stack Overflow用户
提问于 2017-10-25 06:45:33
回答 2查看 1K关注 0票数 1

我目前正在为我的网站开发一个简单的博客系统,我正在使用Laravel5.5,但是我遇到了一个问题。每当我使用我创建的表单创建一篇新文章时,它都是在我的数据库中存储一个空行,而不是从表单中存储数据.

我的功能是存储一篇文章:

代码语言:javascript
复制
public function newsStore()
{
    $input = Request::all();

    Article::create($input);

    return $input;
}

根据我所遵循的教程,如果这样做的话..这是我目前使用的表单:

代码语言:javascript
复制
{!! Form::open(['url' => 'news']) !!}
    <!-- Article Title -->
    <div class="form-group row">
        {!! Form::label('title', 'Title:', ['class' => 'col-2 col-form-label']) !!}
        <div class="col-10">
            {!! Form::text('title', null, ['class' => 'form-control']) !!}
        </div>
    </div>
    <!-- Article Description -->
    <div class="form-group row">
        {!! Form::label('description', 'Description:', ['class' => 'col-2 col-form-label']) !!}
        <div class="col-10">
            {!! Form::text('description', null, ['class' => 'form-control']) !!}
        </div>
    </div>
    <!-- Article Excerpt -->
    <div class="form-group row">
        {!! Form::label('excerpt', 'Excerpt:', ['class' => 'col-2 col-form-label']) !!}
        <div class="col-10">
            {!! Form::text('excerpt', null, ['class' => 'form-control']) !!}
        </div>
    </div>
    <!-- Article Image -->
    <div class="form-group row">
        {!! Form::label('image', 'Image:', ['class' => 'col-2 col-form-label']) !!}
        <div class="col-10">
            {!! Form::file('image') !!}
        </div>
    </div>
    <!-- Article Message -->
    <div class="form-group row">
        {!! Form::label('message', 'Message:', ['class' => 'col-2 col-form-label']) !!}
        <div class="col-10">
            {!! Form::textarea('message', null, ['class' => 'form-control', 'rows' => '7']) !!}
        </div>
    </div>
    <!-- Article Submit -->
    <div class="form-group">
        {!! Form::button('Add Article', ['class' => 'btn btn-primary waves-effect waves-light float-right', 'type' => 'submit']); !!}
    </div>
{!! Form::close() !!}

这是我使用的路线:

代码语言:javascript
复制
Route::post('news', 'DashboardController@newsStore'); // The articles store route

这是我的模型:

代码语言:javascript
复制
class Article extends Model
{
    protected $fillable = [
        'title',
        'description',
        'excerpt',
        'image',
        'body',
        'published_at'
    ];
}

我以前做过一次,试着重新做一遍,但似乎找不出哪里出了问题。

提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-25 06:47:57

要使create()工作,请确保使用的列名称相同。例如,如果您的列名是title,则需要在表单中使用title而不是news-title

代码语言:javascript
复制
{!! Form::text('title', null, ['class' => 'form-control']) !!}
票数 0
EN

Stack Overflow用户

发布于 2017-10-25 07:07:31

在使用此Article::create();时,它意味着所有输入名称都应该与表列名相同。

Ex:

<input name="title" ...与表中的列调用news-title相同

如果不一样

使用查询生成器

代码语言:javascript
复制
DB::table('table_name')->insert(
    [
        'name' => $input->news-title
        .....
    ]
);

阅读更多关于MySQL DB中列名中的连字符的信息

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46925646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档