【发布时间】:2016-11-08 23:06:19
【问题描述】:
我是 laravel 的新手,我有一个问题......
我有一个问题我正在尝试使用 jquery 来查找数据库中的信息显示它们:
我的表单名为“create.blade.php”
@extends('admin.usersprofile')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="panel panel-default">
<div class="panel-heading">Nuevo Perfil de Usuario </div>
<div class="panel-body">
{!! Form::open(['route'=>'admin.profile.store','method'=>'POST','class'=>'']) !!}
<div class="form-group">
{!! Form::label('email','Correo electronico') !!}
</div>
<div class="form-group">
{!! Form::text('email',null,['class'=>'form-consult','placeholder'=>'Por favor ingrese su email']) !!}
<input type="button" class="btn btn-primary" name="consultar" id="consultar" value="Consultar">
</div>
<div class="form-group">
{!! Form::label('first_name','Genero') !!}
{!! Form::select('gender',[''=>'Seleccion un genero','M'=>'Masculino','F'=>'Femenino'],null,['class'=>'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('gender','Genero') !!}
{!! Form::select('gender',[''=>'Seleccion un genero','M'=>'Masculino','F'=>'Femenino'],null,['class'=>'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('twitter','Twitter') !!}
{!! Form::text('twitter',null,['class'=>'form-control','placeholder'=>'Por favor ingrese tu usuario twitter']) !!}
</div>
<div class="form-group">
{!! Form::label('website','Pagina Web o Blog') !!}
{!! Form::text('website',null,['class'=>'form-control','placeholder'=>'Por favor Ingresa la URL de tu sitio web']) !!}
</div>
<div class="form-group">
{!! Form::label('birthdate','Fecha de nacimiento') !!}
{!! Form::text('birthdate',null,['class'=>'form-control','placeholder'=>'Por favor Ingresa tu fecha de nacimiento']) !!}
</div>
<div class="form-group">
{!! Form::label('bio','Sobre mi') !!}
{!! Form::textarea('birthdate',null,['class'=>'form-control','placeholder'=>'Describe aqui algo sobre ti']) !!}
</div>
<button type="submit" class="btn btn-default">Guardar Perfil</button>
{!! Form::close() !!}
</div>
</div>
</div>
</div>
</div>
@endsection
如果您可以在名为 Admin 的目录中看到此路线,我的路线名为“Profile”:
Route::group(['prefix' => 'admin', 'namespace' => '\Admin'],function(){
Route::resource('profile','UsersProfileController');
Route::post('test','UsersProfileController@consultar');
});
这里的驱动叫做“UsersProfile Controllers”:
public function consultar()
{
if(Request::ajax())
{
$json['nombre']="";
$json['twitter']="";
$correo=Input::get('email');
$result= User::orderBy('first_name', 'ASC')
->leftJoin('user_profiles', 'users.id', '=', 'user_profiles.user_id')
->where('email', '=', $correo)
->get();
foreach ($result as $res)
{
$json['nombre']=$res->full_name;
$json['twitter']=$res->twitter;
}
return json_encode($json);
}
}
终于有了我的 Jquery:
$(document).ready(function(){
$("#consultar").click(function(){
var correo=$("#email").val();
var llave=$('input[name=_token]').val();
$.ajax
({
url:'test',
type:'post',
dataType:'json',
data:{'email':correo,'_token': llave},
success: function (data)
{
var nombre=data.nombre;
var twitter=data.twitter;
alert(nombre);
alert(twitter);
}
});
});
});
问题是,当我运行时,这就是让我回来的原因:
RouteCollection.php 中的 MethodNotAllowedHttpException 在 RouteCollection->methodNotAllowed(array('GET', 'HEAD', 'PUT', 'PATCH', 'DELETE'))
现在,如果我检查我的路线,您会发现测试路线存在:
| | POST | admin/test | Course\Http\Controllers\Admin\UsersProfileController@consultar |
如果他们意识到一切都很完美但不明白为什么它不起作用并给我这个消息 MethodNotAllowedHttpException
我希望我能显示正确的路径,我没有看到...谢谢。
【问题讨论】: