Anonymous
Когда я использую методы Eloquent, такие как find() или sync(), я получаю различные ошибки: 404 Not Found и иногда 500 в
Сообщение
Anonymous » 01 дек 2024, 22:28
Я использую Bootstrap Modal для редактирования ролей пользователей. Но без использования формы. просто флажок и кнопка для отправки операции.
Я использую ajax для отправки данных в контроллер.
Но на стороне контроллера, когда я хочу использовать методы Eloquent, я получаю ошибки типа 404 и 500. Я действительно запутался. Я работал над этим более 5 часов.
Вид:
Код: Выделить всё
Edit Roles
×
User Roles
System Admin
HomaPage Admin
Aboutus Admin
Cancel
save
скрипт:
$(document).ready( function () {
$("#submitModal").click(function(){
$('#editmessage').hide();
var systemAdmin = 0;
var homeAdmin = 0;
var aboutUsAdmin = 0;
var portfolioAdmin = 0;
var featuresAdmin = 0;
var contactusAdmin = 0;
var commentAdmin = 0 ;
if($('#checkbox1:checked').val())
{ systemAdmin = 1; } else { systemAdmin = 0; }
if($('#checkbox2:checked').val())
{ homeAdmin = 1; } else { homeAdmin = 0; }
if($('#checkbox3:checked').val())
{ aboutUsAdmin = 1; } else { aboutUsAdmin = 0; }
if($('#checkbox4:checked').val())
{ portfolioAdmin = 1; } else { portfolioAdmin = 0; }
if($('#checkbox5checked').val())
{ featuresAdmin = 1; } else { featuresAdmin = 0; }
if($('#checkbox6:checked').val())
{ contactusAdmin = 1; } else { contactusAdmin = 0; }
if($('#checkbox7:checked').val())
{ commentAdmin = 1; } else { commentAdmin = 0; }
var A_url='';
A_url = "{{ route('userManagement.editRoles') }}";
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
url : A_url,
data :
{
userId : $(this).data('userid'),
systemAdmin : systemAdmin,
homeAdmin : homeAdmin,
aboutUsAdmin : aboutUsAdmin,
portfolioAdmin : portfolioAdmin,
featuresAdmin : featuresAdmin,
contactusAdmin : contactusAdmin,
commentAdmin : commentAdmin
},
type : 'post',
fail: function(data){
var incerttxt = 'Server error';
$('#editmessage').html(incerttxt);
$('#editmessage').fadeIn();
},
success : function( data ) {
//updateUserList_afterEditRoles(data,selectedButton);
console.log(data);
}
});
$('#rolesEditModal').modal('hide');
});
маршрут:
Route::post('editRoles', 'UserManagementController@editRoles')->name('userManagement.editRoles');
контроллер:
public function editRoles(Request $request)
{
$userId=$request["userId"];
//$findedUser = User::find($userId)->roles()->orderBy('id')->get();
$findedUser = User::findorfail($request['userId']);
//$findedUser->roles()->detach();
//$findedUser->roles()->attach($roleId);
$assignedRoles = array();
if ($request["systemAdmin"]==="1")
{ array_push($assignedRoles, 1); }
if ($request["homeAdmin"]==="1")
{ array_push($assignedRoles, 2); }
if ($request["aboutUsAdmin"]==="1")
{ array_push($assignedRoles, 3); }
if ($request["portfolioAdmin"]==="1")
{ array_push($assignedRoles, 4); }
if ($request["featuresAdmin"]==="1")
{ array_push($assignedRoles, 5); }
if ($request["contactusAdmin"]==="1")
{ array_push($assignedRoles, 6); }
if ($request["commentAdmin"]==="1")
{ array_push($assignedRoles, 7); }
$findedUser->roles()->sync([2,3,4]/*$assignedRoles*/);
return ($findedUser);
}
Подробнее здесь:
https://stackoverflow.com/questions/582 ... rs-404-not
1733081285
Anonymous
Я использую Bootstrap Modal для редактирования ролей пользователей. Но без использования формы. просто флажок и кнопка для отправки операции. Я использую ajax для отправки данных в контроллер. Но на стороне контроллера, когда я хочу использовать методы Eloquent, я получаю ошибки типа 404 и 500. Я действительно запутался. Я работал над этим более 5 часов. Вид: [code] Edit Roles × User Roles System Admin HomaPage Admin Aboutus Admin Cancel save скрипт: $(document).ready( function () { $("#submitModal").click(function(){ $('#editmessage').hide(); var systemAdmin = 0; var homeAdmin = 0; var aboutUsAdmin = 0; var portfolioAdmin = 0; var featuresAdmin = 0; var contactusAdmin = 0; var commentAdmin = 0 ; if($('#checkbox1:checked').val()) { systemAdmin = 1; } else { systemAdmin = 0; } if($('#checkbox2:checked').val()) { homeAdmin = 1; } else { homeAdmin = 0; } if($('#checkbox3:checked').val()) { aboutUsAdmin = 1; } else { aboutUsAdmin = 0; } if($('#checkbox4:checked').val()) { portfolioAdmin = 1; } else { portfolioAdmin = 0; } if($('#checkbox5checked').val()) { featuresAdmin = 1; } else { featuresAdmin = 0; } if($('#checkbox6:checked').val()) { contactusAdmin = 1; } else { contactusAdmin = 0; } if($('#checkbox7:checked').val()) { commentAdmin = 1; } else { commentAdmin = 0; } var A_url=''; A_url = "{{ route('userManagement.editRoles') }}"; $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); $.ajax({ url : A_url, data : { userId : $(this).data('userid'), systemAdmin : systemAdmin, homeAdmin : homeAdmin, aboutUsAdmin : aboutUsAdmin, portfolioAdmin : portfolioAdmin, featuresAdmin : featuresAdmin, contactusAdmin : contactusAdmin, commentAdmin : commentAdmin }, type : 'post', fail: function(data){ var incerttxt = 'Server error'; $('#editmessage').html(incerttxt); $('#editmessage').fadeIn(); }, success : function( data ) { //updateUserList_afterEditRoles(data,selectedButton); console.log(data); } }); $('#rolesEditModal').modal('hide'); }); маршрут: Route::post('editRoles', 'UserManagementController@editRoles')->name('userManagement.editRoles'); контроллер: public function editRoles(Request $request) { $userId=$request["userId"]; //$findedUser = User::find($userId)->roles()->orderBy('id')->get(); $findedUser = User::findorfail($request['userId']); //$findedUser->roles()->detach(); //$findedUser->roles()->attach($roleId); $assignedRoles = array(); if ($request["systemAdmin"]==="1") { array_push($assignedRoles, 1); } if ($request["homeAdmin"]==="1") { array_push($assignedRoles, 2); } if ($request["aboutUsAdmin"]==="1") { array_push($assignedRoles, 3); } if ($request["portfolioAdmin"]==="1") { array_push($assignedRoles, 4); } if ($request["featuresAdmin"]==="1") { array_push($assignedRoles, 5); } if ($request["contactusAdmin"]==="1") { array_push($assignedRoles, 6); } if ($request["commentAdmin"]==="1") { array_push($assignedRoles, 7); } $findedUser->roles()->sync([2,3,4]/*$assignedRoles*/); return ($findedUser); } [/code] Подробнее здесь: [url]https://stackoverflow.com/questions/58278132/when-i-use-eloquent-methods-like-find-or-sync-i-get-varius-errors-404-not[/url]