gpt4 book ai didi

javascript - 在 Laravel + AngularJS 中编辑

转载 作者:行者123 更新时间:2023-11-29 20:52:19 26 4
gpt4 key购买 nike

我正在使用 laravel + angularjs 构建完整的 CRUD,但我在“编辑”部分遇到问题。

这是一个内部服务器错误,所以我不知道这意味着什么,我需要帮助。

Error "GET localhost/crudtcc/public/api/v1/colaboradores/editar/3 500 (Internal Server Error)"

JavaScript 文件:

app.controller('colaboradoresController', function($scope, $http, API_URL) {

$http.get(API_URL + "colaboradores")
.success(function(response) {
$scope.colaboradores = response;
});

$scope.toggle = function(modalstate, id_colaborador) {
$scope.modalstate = modalstate;

switch (modalstate) {
case 'add':
$scope.form_title = "Novo colaborador";
$scope.colaborador = null;
break;
case 'edit':
$scope.form_title = "Dados do colaborador";
$scope.id_colaborador = id_colaborador;

$http.get(API_URL + 'colaboradores/editar/' + id_colaborador)
.success(function(response) {
console.log(response);
$scope.colaborador = response;
});
break;
default:
break;
}

$('#myModal').modal('show');
}

$scope.save = function(modalstate, id_colaborador) {
var url = API_URL + "colaboradores/salvar";

if (modalstate === 'edit') {
url += "/editar/" + id_colaborador;
}

$http({
method: 'POST',
url: url,
data: $.param($scope.colaborador),
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
}).success(function(response) {
console.log(response);
location.reload();
}).error(function(response) {
console.log(response);
alert('Um erro ocorreu. Check a log para mais detalhes.');
});
}

$scope.confirmDelete = function(id_colaborador) {

var isConfirmDelete = confirm('Tem certeza que deseja excluir o registro?');
if (isConfirmDelete) {
$http({
method: 'DELETE',
url: API_URL + 'colaboradores/remover/' + id_colaborador
}).
success(function(data) {
console.log(data);
location.reload();
}).
error(function(data) {
console.log(data);
alert('Falha na exclusão');
});
} else {
return false;
}
}

});

路线文件:

    <?php

namespace App\Http\Controllers;
$colaborador = new Colaborador;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Usuario;
use App\Http\Controllers\Controler;
use App\Colaborador;

class Colaboradores extends Controller
{
public function index()
{
return Colaborador::orderBy('id_colaborador', 'asc')->get();
}

public function salvar(Request $request)
{
$colaborador->nome = $request->input('nome');
$colaborador->rg = $request->input('rg');
$colaborador->orgao_expedidor = $request->input('orgao_expedidor');
$colaborador->cpf = $request->input('cpf');
$colaborador->estado_civil = $request->input('estado_civil');
$colaborador->sexo = $request->input('sexo');
$colaborador->nome_pai = $request->input('nome_pai');
$colaborador->nome_mae = $request->input('nome_mae');
$colaborador->naturalidade = $request->input('naturalidade');
$colaborador->data_nascimento = $request->input('data_nascimento');
$colaborador->login = $request->input('login');
$colaborador->senha = $request->input('senha');
$colaborador->siape = $request->input('siape');
$colaborador->pis = $request->input('pis');
$colaborador->rua = $request->input('rua');
$colaborador->numero = $request->input('numero');
$colaborador->bairro = $request->input('bairro');
$colaborador->cidade = $request->input('cidade');
$colaborador->estado = $request->input('estado');
$colaborador->cep = $request->input('cep');
$colaborador->telefone_fixo = $request->input('telefone_fixo');
$colaborador->telefone_celular= $request->input('telefone_celular');
$colaborador->telefone_comercial = $request->input('telefone_comercial');
$colaborador->email = $request->input('email');


$colaborador->save();

return 'Colaborador salvo com sucesso! ID: ' . $colaborador->id_colaborador;

}

public function update(Request $request,$id_colaborador)
{
$colaborador = Colaborador::find($id_colaborador);

$colaborador->nome = $request->input('nome');
$colaborador->rg = $request->input('rg');
$colaborador->orgao_expedidor = $request->input('orgao_expedidor');
$colaborador->cpf = $request->input('cpf');
$colaborador->estado_civil = $request->input('estado_civil');
$colaborador->sexo = $request->input('sexo');
$colaborador->nome_pai = $request->input('nome_pai');
$colaborador->nome_mae = $request->input('nome_mae');
$colaborador->naturalidade = $request->input('naturalidade');
$colaborador->data_nascimento = $request->input('data_nascimento');
$colaborador->login = $request->input('login');
$colaborador->senha = $request->input('senha');
$colaborador->siape = $request->input('siape');
$colaborador->pis = $request->input('pis');
$colaborador->rua = $request->input('rua');
$colaborador->numero = $request->input('numero');
$colaborador->bairro = $request->input('bairro');
$colaborador->cidade = $request->input('cidade');
$colaborador->estado = $request->input('estado');
$colaborador->cep = $request->input('cep');
$colaborador->telefone_fixo = $request->input('telefone_fixo');
$colaborador->telefone_celular= $request->input('telefone_celular');
$colaborador->telefone_comercial = $request->input('telefone_comercial');
$colaborador->email = $request->input('email');
$colaborador->save();

return "Sucesso atualizando Colaborador #" . $colaborador->id_colaborador;
}

public function remove(Request $request, $id_colaborador)
{
$colaborador = Colaborador::where("id_colaborador", $id_colaborador);

$colaborador->delete();

return "Colaborador #". $request->input('id_colaborador'). " excluido com sucesso!";
}

public function editar($id_colaborador)
{
return Colaborador::where("id_colaborador", $id_colaborador);
}



}
?>

和路由文件...

                                <?php

/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| Here is where you can register all of the routes for an application.
| It's a breeze. Simply tell Laravel the URIs it should respond to
| and give it the controller to call when that URI is requested.
|
*/
Route::get("/colaboradores/gercolaboradores",
function() {
return view("/colaboradores/gerenciarcolaboradores");
});

Route::get("/api/v1/colaboradores/","Colaboradores@index");

Route::get("/api/v1/colaboradores/editar/{id_colaborador}","Colaboradores@editar");

Route::post('/api/v1/colaboradores/salvar/editar/{id_colaborador}',
'Colaboradores@update');

Route::post('/api/v1/colaboradores/salvar', 'Colaboradores@salvar');

Route::delete('/api/v1/colaboradores/remover/{id_colaborador}', 'Colaboradores@remove');


?>

最佳答案

您应该在 Angular 端将您的请求写为:

$http.post(API_URL + 'colaboradores/editar/' + id_colaborador, {YOUR_DATA})
.success(function(response) {
console.log(response);
$scope.colaborador = response;
});

并传递您想要发送到后端的参数。请引用:https://docs.angularjs.org/api/ng/service/ $http。

说明:您正在使用 Angular GET

$http.get(API_URL + 'colaboradores/editar/' + id_colaborador)

并且您在 Laravel 中将路线定义为 POST

Route::post('/api/v1/colaboradores/salvar/editar/{id_colaborador}',
'Colaboradores@update');

GET 不传递除 url 之外的任何数据,并且您尝试获取该数据,就像通过 POST 请求发送数据一样。您可以在以下链接中找到有关 GET 和 POST 请求的简短说明:http://www.w3schools.com/tags/ref_httpmethods.aspWhat is the difference between POST and GET?

关于javascript - 在 Laravel + AngularJS 中编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37933686/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com