
Jakhongir
06.11.2016
11:27:06

Виктор
06.11.2016
11:30:41
в vendor/laravel/framework/src/Illuminate/Auth/GenericUser.php есть метод getAuthIdentifierName(), который возвращает имя поля. Переопределить его можно. На каком-то проекте я уже делал подобное
а, ты про поля авторизации, а я про идентификацию))

Jakhongir
06.11.2016
11:38:41
у меня нужно использовать столбцы UserMail и UserPass для аутентификации,

Google

Jakhongir
06.11.2016
11:39:39
я про поля аутентификации,

Виктор
06.11.2016
11:39:59
да да. В laravel/framework/src/Illuminate/Foundation/Auth/AuthenticatesUsers.php есть метод username(). Там email, его переопределяй

Jakhongir
06.11.2016
11:40:37
да, username переопределил, все работает

Виктор
06.11.2016
11:40:42
а на счет password метод credentials

Jakhongir
06.11.2016
11:41:09
но не могу найти как поменять password

Виктор
06.11.2016
11:41:39
protected function credentials(Request $request)
{
return $request->only($this->username(), 'password');
}
его переопредели
или даже его только и переопределяй
protected function credentials(Request $request)
{
return $request->only('UserMail', 'UserPass');
}

Jakhongir
06.11.2016
11:43:01
пробовал там поменять, регистрация работает, логин нет - постоянно возвращает these credentials are not in our records,

Виктор
06.11.2016
11:44:10
а поля формы так же у тебя называются?
UserMail и UserPass?

Jakhongir
06.11.2016
11:44:37
да,

Виктор
06.11.2016
11:49:22
Ну в общем у меня плохие телепатические способности)) Дальше надо смотреть)

Google

Jakhongir
06.11.2016
12:06:24
все делал по докам с нуля, не много кода, но все равно громоздко будет если сюда скину,
или норм?

Виктор
06.11.2016
12:06:45
давай)


Jakhongir
06.11.2016
12:10:52
############## модель User:
class User extends Authenticatable
{
use Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'name', 'email', 'UserPass', 'phonenumber',
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'UserPass', 'remember_token',
];
// public function getAuthPassword()
// {
// return $this->usePassword;
// }
}
############## представление форма логина
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
@if (!Auth::check())
<a href="{{ url('register') }}"> <button>Registration</button> </a>
@endif
<div class="panel-heading">Login</div>
<div class="panel-body">
<form class="form-horizontal" role="form" method="POST" action="{{ url('login') }}">
{!! csrf_field() !!}
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input type="email" class="form-control" name="phonenumber" value="{{ old('email') }}">
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="UserPass">
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<div class="checkbox">
<label>
<input type="checkbox" name="remember"> Remember Me
</label>
</div>
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-sign-in"></i>Login
</button>
<a class="btn btn-link" href="{{ url('/password/reset') }}">Forgot Your Password?</a>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
Представление форма регистрации
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Register</div>
<div class="panel-body">
<form class="form-horizontal" role="form" method="POST" action="{{ url('register') }}">
{!! csrf_field() !!}
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">Name</label>
<div class="col-md-6">
<input type="text" class="form-control" name="name" value="{{ old('name') }}">
@if ($errors->has('name'))
<span class="help-block">
<strong>{{ $errors->first('name') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input type="email" class="form-control" name="phonenumber" value="{{ old('email') }}">
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="UserPass">
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('password_confirmation') ? ' has-error' : '' }}">
<label class="col-md-4 control-label">Confirm Password</label>
<div class="col-md-6">
<input type="password" class="form-control" name="UserPass_confirmation">
@if ($errors->has('password_confirmation'))
<span class="help-block">
<strong>{{ $errors->first('password_confirmation') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-user"></i>Register
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
############## контроллер регистрации
class RegisterController extends Controller
{
/*
|------------------------------------------------------------------------—
| Register Controller
|------------------------------------------------------------------------—
|
| This controller handles the registration of new users as well as their
| validation and creation. By default this controller uses a trait to
| provide this functionality without requiring any additional code.
|
*/
use RegistersUsers;
/**
* Where to redirect users after login / registration.
*
* @var string
*/
protected $redirectTo = '/';
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest');
}
/**
* Get a validator for an incoming registration request.
*
* @param array $data
* @return \Illuminate\Contracts\Validation\Validator
*/
protected function validator(array $data)
{
return Validator::make($data, [
'name' => 'required|max:255',
'phonenumber' => 'required|email|max:255|unique:users',
'UserPass' => 'required|min:2|confirmed',
]);
}
/**
* Create a new user instance after a valid registration.
*
* @param array $data
* @return User
*/
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'phonenumber' => $data['phonenumber'],
'UserPass' => bcrypt($data['UserPass']),
]);
}
}
в LoginController не менял ничего


B?N
06.11.2016
12:18:53
<input type="email" class="form-control" name="phonenumber" value="{{ old('email') }}">
>> <input type="email" class="form-control" name="phonenumber" value="{{ old('email') }}">
>> phonenumber
а поле в модели email

Jakhongir
06.11.2016
12:19:39
блин, old('email')
спасибо, в модели еще есть phonenumber, использую вместо email

Dmitriy
06.11.2016
12:21:25


Jakhongir
06.11.2016
12:22:32
исправил, на
<input type="email" class="form-control" name="phonenumber" value="{{ old('phonenumber') }}">
также регистрация работает, залогиниться не получается,
Валидацию не пройдет
userphone - это я пробовал другое имя столбца использовать, вместо email, вообще будет UserMail

B?N
06.11.2016
16:26:14
эээй
кто удали

Google

B?N
06.11.2016
16:26:18
л
я не успел добавить себе их

YOda
06.11.2016
17:37:39
Всем привет подскажите как ларавеле 5.3 в шаблоне сделать ссылку на именованый роутер?
Использую blade

D'
06.11.2016
17:38:15
так же как в 5.1

Quiss
06.11.2016
17:41:29
И так-же как в 4.0+

Golib
06.11.2016
19:24:43

Dmitriy
06.11.2016
22:32:05
а я про это
'phonenumber' => 'required|email|max:255|unique:users'

YOda
07.11.2016
01:55:00

Roman
07.11.2016
03:18:36
Когда кидаете код, прошу писать его в следующих кавычках: `
Например: echo "Hello World";

Golib
07.11.2016
03:35:21

Dmitriy
07.11.2016
03:35:46
`

Golib
07.11.2016
03:35:54
tesstt
понятно

Admin
ERROR: S client not available

Golib
07.11.2016
03:36:15
Laravel
public function index()

Евгений
07.11.2016
06:22:27
ребят, кто нить делал поиск на ларавеле через algolia?

Google

Виктор
07.11.2016
06:25:00
Ты давай сам вопросец мочи))

Евгений
07.11.2016
06:25:32
как отдавать в индекс только если у записи is_active = true

Виктор
07.11.2016
06:25:47
потом уже ребята и познакомятся с algolia, кто не знаком)

Евгений
07.11.2016
06:26:25
https://www.algolia.com/doc/api-client/laravel/options#restrict-indexing-to-a-subset-of-your-data

Виктор
07.11.2016
06:26:35
Ну и как говорится "Слова ничего не стоят, покажите код" ))

Евгений
07.11.2016
06:27:04
тут вот есть indexOnly(), но не понятно как применять
какой ему index_name нужен

Виктор
07.11.2016
06:28:09
видимо это для use index
аа, это собственно поиск по уже составленному индеку, понятно)

Евгений
07.11.2016
06:30:10
по докам судя можно создать своё имя индекса
private $index_name = 'contacts_local';
Я не создаю своё имя, то есть у меня автоматом по названию таблицы берется нахвание индекса. Нужно ли мне его прописать в indexOnly('myName') или если оставить пустым то поставится по умолчанию
и собственно как внутри indexOnly сделать выборку только is_active

Виктор
07.11.2016
06:31:03
может тогда отдельный индекс сделать с is_active?

Евгений
07.11.2016
06:31:42
да ну, кажется слишком тупо. Наверняка есть простой способ
не одному мне же потребовалось это делать)

Виктор
07.11.2016
06:32:02
вполне мб)

Евгений
07.11.2016
06:32:22
щас попробую свои догадки применить и посмотрю что выйдет
во, крутяк
public function indexOnly() {
return $this->is_active == 1;
}
так работает
в индекс идут только активные

Виктор
07.11.2016
06:34:34
?

Google

Евгений
07.11.2016
06:34:37
при именении статуса у записи индекс автоматически обновляется
вопрос:
есть организации, сейчас делаю для них нарифы.
делаю миграцию создавая таблицу тарифов
делаю сидирование заполняя таблицу тарифов
делаю миграцию, добавляющую организации столбец с номером тарифа