부트 스트랩 모달에서 Laravel의 Ajax를 사용하여 데이터를 저장하려고합니다. 여기 내 코드는 다음과 같습니다Laravel에서 Ajax를 통해 데이터를 저장하지 못했습니다.
route.php
Route::get('/repository/', '[email protected]');
Route::post('/repository/', '[email protected]');
지금 repository.index
@section('popups')
<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
<h4 class="modal-title" id="myModalLabel">Modal title</h4>
</div>
<div class="modal-body">
<div class="row row-bg">
<div class="col-md-12">
<input type="text" class="text-field" style="width:100%; margin-bottom: 10px;" id="name" name="name" placeholder="URL name*: ">
{{$errors->first('name','<span class="error_message postShake"><i class="fa mr fa-exclamation-triangle"></i> Please enter the name</span>')}}
</div>
<div class="col-md-12">
<input type="text" class="text-field" style="width:100%; margin-bottom: 10px;" id="url" name="url" placeholder="Enter the URL*: ">
</div>
<div class="col-md-12">
<textarea class="text-field" style="width:100%; margin-bottom: 10px;" id="description" name="description" placeholder="Enter the URL*: "></textarea>
</div>
</div>
</div>
<div class="modal-footer">
<button type="submit" class="whiteButton" data-dismiss="modal">Close</button>
<button type="button" id="add" name="add" class="blueButton">Save changes</button>
</div>
</div>
</div>
</div>
<script>
$(document).ready(function(){
$('#add').click(function(e){
e.preventDefault();
var name=$(this).find('input[name=name]').val();
//post Ajax
$.post('/repository',
{
"name": $(this).find('input[name=name]').val(),
"url": $(this).find('input[name=url]').val(),
"description": $(this).find('input[name=description]').val()
}, function(data){
// console.log(data);
}, 'json');
});
});
</script>
@stop
그리고 RepositoryController.php
<?php
class RepositoryController extends BaseController{
public function index(){
return View::make('repository.index');
}
public function store(){
$validation=Validator::make(Input::all(), Link::$rules);
if($validation->fails()){
return Redirect::back()->withInput()->withErrors($validation->messages());
}
$link = new Link;
$link->name=Input::get('name');
$link->url=Input::get('url');
$link->description=Input::get('description');
$link->save();
return Redirect::route('repository.index');
}
}
Link.php
모델
어떤 문제가 될 수 있습니다 콘솔에서
<?php
class Link extends Eloquent{
public static $rule= ['name'=>'reuiqred',
'url'=>'required',
'description'=>'required'];
}
, 그것은 내게 오류를 준다? 또한 유효성 검사 오류 메시지가 모달에 나타나지 않습니다.
아약스와 리디렉션을 수정. – itachi
이 코드는 어떻게 작동합니까? 나는 Laravel에서 Ajax를 배우고 있는데, 리다이렉트 대신 – user1012181
대신 Response :: json()을 사용한다. –