inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

존재하지않는 데이터 캐시에 입력하기

Pagination 에 parameter를 after, count 에 덧붙여 다른것을 추가 할수 있을까요?

464

ldsik03

작성한 질문수 4

0

안녕하세요.

pagination 을 응용하면서 추가적인 조건이 생겨 parameter를 추가하고 싶습니다.

예를 들어 restaurant 화면에서 별점이 4점 이상인것만 가져오고 싶을때 하기 함수에다 추가해야 될것 같은데 잘 않되고 있습니다.

감사합니다.

@GET('/')
@Headers({'accessToken': 'true'})
Future<CursorPagination<RestaurantModel>> paginate({
  @Queries() PaginationParams? paginationParams = const PaginationParams(),
});

flutter 하이브리드-앱

답변 2

0

hyokil jung

저도 같은 작업하고 있습니다 :)

선생님, PaginationParam을 상속을 받으면 IBasePaginationRepository도 일반화를 시켜야하나요?
혹시 가능하면 조금 자세히 설명부탁 드려도 될까요?

0

코드팩토리

@JsonSerializable()
class TestPaginationParams extends PaginationParams {
  final String some;
  final String more;
  final String value;

  TestPaginationParams({
    required this.some,
    required this.more,
    required this.value,
  });

  Map<String, dynamic> toJson() => _$TestPaginationParamsToJson(this);

  factory TestPaginationParams.fromJson(Map<String, dynamic> json) => _$TestPaginationParamsFromJson(json);
}

@RestApi()
abstract class RestaurantRatingRepository implements IPaginationRepository<RatingModel, TestPaginationParams> {
  factory RestaurantRatingRepository(Dio dio, {String baseUrl}) = _RestaurantRatingRepository;

  @GET("/")
  @Headers({
    'accessToken': 'true',
  })
  // Future<CursorPagination<RatingModel>> paginate({
  //   @Queries() PaginationParams? paginationParams,
  // });
  Future<CursorPagination<RatingModel>> paginate({
    @Queries() TestPaginationParams? paginationParams,
  });

  @POST("/")
  @Headers({
    'accessToken': 'true',
  })
  Future<RatingModel> postRating({
    @Body() required CreateRestaurantRatingBodyDto body,
  });
}

abstract class IPaginationRepository<T, U extends PaginationParams> {
  Future<CursorPagination<T>> paginate({
    U? paginationParams,
  });
}

이런 느낌은 어떠신가요?

0

코드팩토리

안녕하세요!

해당 부분은 프론트에서 뿐만 아니라 서버에서도 코드가 변경돼야합니다!

Query Parameter를 인지해서 특정 기능을 실행하게 만들어야해서 서버에 코드를 추가해야하는 사항입니다.

저희 카카오 채널로 오셔서 원격 요청 주시면 제가 변경 도와드리도록 하겠습니다.

https://links.codefactory.ai

감사합니다!

0

ldsik03

서버도 선생님이 제공해준 nest.js 프로그램을 응용해서 Mysql에 연결해 놓았습니다.

프론트엔드에서만 PaginationDto에 추가 파라미터만 태우면 될것 같은데 아이디어나 방향만 알려주시면 최대한 노력해 보겠습니다.

하기 소스코드는 전체 데이터 가져오는것은 잘되고 있습니다. 조건을 주고 싶어서 질문을 남깁니다.

감사합니다.

@UseGuards(AccessTokenGuard) @Get('/requestPage')

paginateRequests( @Query() paginationDto: PaginationDto ): Promise<Pagination<RequestPage>> {

return this.requestService.paginateRequests( paginationDto);

}

0

코드팩토리

아하~! PaginationParam을 상속받아서 원하시는 파라미터들을 추가하는 방법은 어떠신가요?

Isar 마지막 업데이트는 2년전입니다.

0

31

0

FlutterSecureStorage 질문

0

32

0

Dio onError Interceptor 만드는 부분에 질문이 있습니다.

0

80

2

관리자 기능에 대한 질문

0

100

2

part 'restaurant_model.g.dart';

0

92

1

36강. dio 인터셉터에 storage를 전달하는 코드가 이해 안되는데요. 도움 부탁드립니다.

0

56

2

2번 반환 상황 관련 질문

0

61

2

riverpod 3.0

0

140

2

Asset folder??

0

83

2

디자이너와 협업 시 프레임 크기 설정 관련 질문

0

114

2

FutureProvider, StateNotifierProvider 선택 기준

0

70

2

컴포넌트 모델화

0

64

2

쿼리 파라미터

0

84

2

화면 안보임

0

68

2

PaginationListView

0

54

1

강의중 37.Dio onErrorInterceptor 작업하기 dio 관련 질문입니다.

0

103

2

프로토타입이미지

0

62

2

여러 객체를 상태 관리하는 방법에 대한 질문

0

85

2

장바구니 결제하기 응답이 500이 옵니다.

0

105

2

removeFromBasket에서 await patchBasket()을 마지막에 하면 에러나는거 아닌가요?

0

67

2

이 두가지는 완전히 동일한 기능인가요?

0

106

3

내부 코드를 작성하지 않은 CursorPaginationLoading가 어떻게 로딩상태를 갖는지 잘 모르겠습니다...

0

77

2

_SplashScreenState에서 storage를 late로 호출해서 한번만 불러와도 되나요?

0

86

2

코딩 작성 순서 관련 질문

0

88

2