当前位置: 首页 > 知识库问答 >
问题:

Laravel 5:表单数据不会提交到数据库-未显示错误

邬朗
2023-03-14

我试图分配用户作为版主到论坛类别(subreddits)中的透视表称为版主

这是桌子

版主:id、用户id、子Reddit id、创建时间、更新时间

用户: id: name: email...

子域名:id,用户id,名称。。。

我已经创建了视图,控制器和模型,但数据不会提交到数据库,我没有错误。

注意:我需要访问此路径subreddit/{id}/版主/create,以便进入视图并开始提交。

编辑:我刚刚清空了store()函数,并将其替换为返回完成;但这似乎没有生效。点击提交按钮后,页面就会重新加载,什么都不会发生。所以也许问题出在风景上?

Routes.php

Route::resource('subreddit', 'SubredditController');
Route::resource('subreddit.moderators', 'ModeratorsController');

路由服务提供者

$router->model('articles', 'App\Article');
$router->model('subreddit', 'App\Subreddit');
$router->model('posts', 'App\Post');
$router->model('moderators', 'App\Moderator');

主持人型号

protected $table = 'moderators';

    protected $fillable = ['user_id', 'subreddit_id'];

    public function subreddit() {
        return $this->belongsTo('App\Subreddit');
    }

    public function user() {
        return $this->belongsTo('App\User');
}

在这里,我试图手动提交user_id和subreddit_it,只是为了测试它是否工作。

public function create(Moderator $moderator, Subreddit $subreddit, User $user)
    {
        $subreddit = Subreddit::with('user')->findOrFail($subreddit->id);

        return view('user/moderators')->with(compact('subreddit'));
    }

public function store(Requests\ModeratorRequest $request, Subreddit $subreddit)
    {
        $moderator = new Moderator;
        $moderator->user_id = 2;
        $moderator->subreddit_id = 17;
        $moderator->save();
    }

这是视图中的表单,我正在使用Typeahead。js这就是为什么div带有id=“remote”

{!! Form::open(['url' => 'subreddit/' . $subreddit->id . '/moderators', 'method' => 'POST']) !!}

    <p>
        <div id="remote">
            <input class="form-control typeahead" type="text" placeholder="Choose a Username" name="user_name">
            <input type="hidden" class="user_id" value="" name="user_id">
        </div>
    </p>

    <p>
        {!! Form::submit('Submit Post', ['id' => 'submit', 'class' => 'btn btn-primary']) !!}
    </p>

{!! Form::close() !!}

中等要求

public function authorize()
{
   return true;
}

public function rules()
{
   return [
        'user_id' => 'required',
        'subreddit_id' => 'required'
   ];
}

共有1个答案

凤经国
2023-03-14

尝试foreach($messages)-

问题是您的现代请求正在返回验证错误,您不会在视图中显示该错误。

 类似资料:
  • 因此,当我在表单上输入信息后,它会用新表单刷新new.php页面,但不会提交任何信息。我没有错误,就像我在页面上点击刷新一样。我觉得我做的一切都是对的,但我似乎不明白为什么这不起作用。我刚刚从mysql过渡到mysqli,所以我有点像新手。它也没有回到home.php. new.php

  • 正如标题所说,如果它是自动完成的,它不会提交到数据库,但如果它没有自动完成,它会提交到数据库。我不想禁用自动完成,我不知道它为什么这样做。我的MAMP文件夹中的PHP和MySQL日志文件也没有错误。最后,它会重定向到确认页面,即使它在自动填充时没有提交到数据库。 我的代码: 失败的 HTTP 开机自检请求: 请求URL:http://localhost:5757/private-events/?c

  • 问题内容: 是否可以在Struts2的操作中将表单的数据提交到Java Set? 动作代码: 表单代码: 问题答案: 该仅仅是一个集合,Struts2的对任何类型的集合的内部支持。但是对于这种类型的集合,您不能在OGNL表达式中使用索引。尝试

  • 问题内容: 我在显示从数据库到下拉列表的数据时遇到了困难。 这是我尝试过的: 模型.php Controller.php View.php 但是结果显示在我的页面顶部。它没有出现在下拉列表中。我在这里做错了什么?非常感谢您的帮助。谢谢。 问题答案: 您不应该从视图中调用模型。而是在加载视图之前尝试调用模型和设置。 也不要在模型中回显行结果,除非您希望将其显示在页面上。 控制器: 模型: 视图:

  • 本文向大家介绍php如何把表单内容提交到数据库,包括了php如何把表单内容提交到数据库的使用技巧和注意事项,需要的朋友参考一下 一般朋友们逛一些网站的时候,想使用网站或者看到更多网站里的内容,网站会要求用户进行新用户的注册,网站会把新用户的注册信息存入数据库中,需要的时候再进行提取。 这样网站就会首先创建自己的数据库和对应的表,我们这里使用php创建一个简单的数据库和表,使用phpMyAdmin来

  • 示例类: 属性(源): 但是,每当我访问并单击Connect时,就会直接指向一个空白的白色页面。当我使用“测试连接”按钮时,它说“测试成功”。正如本问题中提到的,我尝试了JDBC:h2:mem:testdb和JDBC:h2:~/test来获取JDBC URL。 IDE控制台中不会显示错误。问题可能是什么?谢了。