我不会在all users
中显示admin page
。
我找不到,也不知道function symfony
中的return all users
至angular
。您能知道代码吗?
我使用mysql和phpmyadmin的db
我知道问题出在我的symfony函数上。我想要返回所有列出的后台办公室用户的功能
我在UserController.php中的功能:
/**
* @Rest\Get("/allUsers")
*/
public function getAllUsers()
{
// TODO: récupérer tout les utilisateurs de la base de donnée.
$user = $this->get('security.token_storage')->getDoctrine()->getUser();;
return new Response($user);
}
我的userService.ts:
getAllUsers() {
return this.api.get('api/user/allUsers');
}
我使用Angular 7
和Symfony 4
我在UserController.php中返回该函数的当前用户
public function getUser()
{
$user = $this->get('security.token_storage')->getToken()->getUser();
$response = $this->serializer->serialize($user, 'json', SerializationContext::create()->setGroups(array('user.get')));
return new Response($response);
}
答案 0 :(得分:1)
UserController.php:
/**
* @Rest\Get("/allUsers")
*/
public function getAllUsers()
{
$em = $this->getDoctrine()->getManager();
$userRepo = $em->getRepository(User::class);
$user = $userRepo->findAll();
$response = $this->serializer->serialize($user, 'json', SerializationContext::create()->setGroups(array('user.get')));
return new Response($response);
}
user.service.ts:
getAllUsers(): Observable<Container[]> {
return this.api.get('api/user/allUsers');
}
admin.component.ts:
export class AdministrationUsersComponent implements OnInit {
users = [];
constructor(
private userService: UserService,
) { }
ngOnInit() {
this.userService.getAllUsers().subscribe((result) => {
this.users = result;
});
}
}
admin.component.html:
<tr *ngFor="let user of users">
<td>{{user.username}}</td>
<td>{{user.firstName}}</td>
<td>{{user.lastName}}</td>
</tr>
答案 1 :(得分:0)
使用Angular HTTPClient调用该API
// this.http.get("http://jsonplaceholder.typicode.com/users").
// subscribe((data) ⇒ console.log(data))
this.http.get("this is your servie URL ").
subscribe((data) ⇒ console.log(data))
答案 2 :(得分:-1)
您没有提供您的应用程序组件,但我想您还没有制定一种从服务中获取数据的方法。与我分享一种从服务获取数据的方法。
如果您使用Http请求(使用Rest API),则:
这就是您的服务的外观:
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';
import { Container } from '../Container';
@Injectable({
providedIn: 'root'
})
export class MarinServiceService {
Marinurl : string = 'http://192.168.0.83/MarinApi/api/Values';
constructor(private http : HttpClient) { }
public getAllContainers():Observable<Container[]>{
return this.http.get<Container[]>(this.Marinurl)
}
}
根据您的名称更改方法名称和对象。
这是Component方法:
users = [];
ngOnInit() {
this.marinService.getAllContainers().subscribe((result)=>{
this.users = result;
根据您的姓名进行更改。
基本上,您需要预订方法->将其视为订阅YouTube频道的观看者。并且不断寻找新视频。