php - 未显示赞助商用户名 Laravel
问题描述
我正在制作一个多级系统,我们使用推荐链接,但赞助商用户名没有出现在注册页面的 html 中,要访问它,必须退出当前会话。
我的迁移:
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddReferrerToUsersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('users', function (Blueprint $table)
{
$table->integer('referrer_id')->unsigned()->default(1)->after('id');
$table->foreign('referrer_id')->references('id')->on('users');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('users', function (Blueprint $table)
{
$table->dropForeign(['referrer_id']);
$table->dropColumn( 'referrer_id' );
});
}
}
我的控制器:refController.php
<?php
namespace App\Http\Controllers;
use App\User;
use Illuminate\Http\Request;
class RefController extends Controller
{
public function index( $username )
{
$user = User::where( 'username', $username )->first();
return ( is_null( $user ) )
? redirect( '/' )
: redirect( '/register' )->withCookie( cookie()->forever( 'referrer_id', $user->id ) );
}
}
我的路线:
Route::get('/user', function () {
return redirect('/');
});
Route::get('/user/{username}', 'RefController@index' );
我的HTML:
<?php if (isset($referrer_id->id)) { ?>
<p class="login-box-msg" style="margin-top: 20px; margin-bottom: 30px; color: #373737;">You have been nominated for:<br><b>{{$referrer_id->name. ' - '. $referrer_id->email}}</b></p>
<?php } ?>
我的“referrer_id”结构在“users”表中。
解决方案
推荐阅读
- azure - 如何使用帐户和帐户密钥创建具有 Azure WASB 存储的 Hive 表?
- label - 如何在多图中设置标签的位置?
- python - Python TypeError:不可散列的类型:scikit load_boston 数据上的“切片”
- django - 在两个数据库之间同步 postgres 表
- javascript - ES6 解构为“this”
- machine-learning - 我想检测图像中的枪支。给定背景中有这么多物体的图像,进行物体检测(对于枪)的正确步骤是什么?
- asp.net-core - 如何在我的 dot net core 项目中引用 lodash?
- java - HashMap的Node中存储hash的目的是什么?
- excel - 如何找到最大数据的行数并设置为0
- apache-kafka - 对同一个kafka主题产生一批事件相互覆盖