Bootcamp: νˆ¬ν‘œ λͺ¨λΈμ˜ 버그

에 λ§Œλ“  2019λ…„ 01μ›” 29일  Β·  6μ½”λ©˜νŠΈ  Β·  좜처: vitorfs/bootcamp

selection_008
이 λ‹¨κ³„μ—μ„œ λ‚˜λŠ” 첫 번째 upvoteλ₯Ό ν…ŒμŠ€νŠΈν•˜κ³  μžˆμ—ˆκ³  μ¦‰μ‹œ downvoteλ₯Ό μˆ˜ν–‰ν•˜λ©΄ νˆ¬ν‘œ λ²ˆν˜ΈλŠ” λ³€κ²½λ˜μ§€λ§Œ κΈ°ν˜ΈλŠ” λ³€κ²½λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
selection_009
이 νŽ˜μ΄μ§€μ—μ„œ λ‚˜λŠ” νŽ˜μ΄μ§€λ₯Ό μƒˆλ‘œκ³ μΉ¨ν•˜κ³  λ°˜λŒ€ νˆ¬ν‘œλ₯Ό ν•˜κ³  μ°¬μ„± νˆ¬ν‘œλ₯Ό ν•˜λ©΄ μˆ«μžκ°€ λ³€κ²½λ˜μ§€λ§Œ κΈ°ν˜ΈλŠ” λ°˜λŒ€ νˆ¬ν‘œλ‘œ 남아 있고 μƒˆλ‘œμš΄ μ°¬μ„± νˆ¬ν‘œλ„ 올 κ²ƒμž…λ‹ˆλ‹€.
selection_010
그리고 μ—¬κΈ°μ—μ„œλ„ 같은 일이 μΌμ–΄λ‚©λ‹ˆλ‹€

Good first issue bug

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

@Shekharnuniaκ°€ λ§ν–ˆλ“― 이 νˆ¬ν‘œ UIκ°€ μ˜λ„ν•œ λŒ€λ‘œ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λ²„κ·ΈλŠ” λͺ¨λΈμ— μ—†μœΌλ©° λΆ„λͺ…νžˆ Ajax 호좜둜 μ• λ‹ˆλ©”μ΄μ…˜μ„ μˆ˜ν–‰ν•˜λŠ” JS 블둝에 μžˆμŠ΅λ‹ˆλ‹€. ν™•μΈν•˜λŠ” 데 μ‹œκ°„μ„ ν• μ• ν•˜κ² μŠ΅λ‹ˆλ‹€.

검색 결과에 λŒ€ν•΄ λΆˆνŽΈμ„ λΌμ³λ“œλ € μ£„μ†‘ν•©λ‹ˆλ‹€. μ΄λŠ” μ œκΈ°ν•  μƒˆλ‘œμš΄ λ¬Έμ œμž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ κ°„λ‹¨νžˆ λ§ν•΄μ„œ: μ•„λ‹ˆμš”, μž‘λ™ 방식이 μ•„λ‹™λ‹ˆλ‹€. κ²°κ³Όλ₯Ό λ³΅μ œν•  수 μžˆμ—ˆκ³  확인해야 ν•©λ‹ˆλ‹€.

λͺ¨λ“  6 λŒ“κΈ€

λ‚˜λŠ” 행동을 λ³Έλ‹€. μ†”μ§νžˆ λ§ν•΄μ„œ λ‚˜λŠ” 이것을 찾지 λͺ»ν–ˆμ§€λ§Œ μ•„λ§ˆλ„ λΆ€νŠΈμŠ€νŠΈλž©μ—μ„œ ν…ŒμŠ€νŠΈλ˜μ§€ μ•Šμ€ λͺ‡ 가지 λ³€κ²½ 사항이 영ν–₯을 λ―ΈμΉ  κ²ƒμž…λ‹ˆλ‹€. λ‚΄κ°€ 확인 ν• κ²Œμš”. μ•Œλ €μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€ @Shekharnunia

λ„ˆλ„ μ•Œκ³  μžˆλŠ” 쀄 μ•Œμ•˜μ–΄ ν•œ 달 전에도 λˆˆμΉ˜μ±„κ³  문제λ₯Ό μ•ˆ λƒˆμœΌλ‹ˆκΉŒ μ–΄μ œ λ¨Όμ € λ„ˆμ—κ²Œ 이것에 λŒ€ν•΄ λ¬Όμ–΄λ΄€μ–΄

λ‚˜λŠ” 이것이 문제라고 μƒκ°ν•˜μ§€ μ•ŠλŠ”λ‹€. μ°¬μ„± 및 λ°˜λŒ€ νˆ¬ν‘œλ₯Ό ν•œ ν›„ νŽ˜μ΄μ§€λ₯Ό μƒˆλ‘œκ³ μΉ¨ν•΄ λ³΄μ„Έμš”. μΊμ‹œκ°€ 없어도 κ°€λŠ₯ν•©λ‹ˆλ‹€. CTRL + F5.
Django 채널과 관련이 μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. Redisλ₯Ό μ˜¬λ°”λ₯΄κ²Œ κ΅¬μ„±ν–ˆμŠ΅λ‹ˆκΉŒ?

μ—¬λŸ¬λΆ„μ΄ 이것을 μ•Œκ³  μžˆλŠ”μ§€ λͺ¨λ₯΄κ² μ§€λ§Œ λ­”κ°€ 예λ₯Ό 검색 ν•  λ•Œ
selection_013
이 μ§ˆλ¬Έμ„ κ²Œμ‹œν•˜κ³  검색 μƒμžμ— shekharλ₯Ό μž…λ ₯ν•˜λ©΄
selection_011
selection_012
그리고 이것은 κ³„μ†ν•΄μ„œ 같은 μ§ˆλ¬Έμž…λ‹ˆλ‹€.
λ„ˆν¬λ“€μ€ μ΄λ ‡κ²Œ μΌν•˜κ²Œ ν•˜μ˜€λŠλƒ?

@Shekharnuniaκ°€ λ§ν–ˆλ“― 이 νˆ¬ν‘œ UIκ°€ μ˜λ„ν•œ λŒ€λ‘œ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λ²„κ·ΈλŠ” λͺ¨λΈμ— μ—†μœΌλ©° λΆ„λͺ…νžˆ Ajax 호좜둜 μ• λ‹ˆλ©”μ΄μ…˜μ„ μˆ˜ν–‰ν•˜λŠ” JS 블둝에 μžˆμŠ΅λ‹ˆλ‹€. ν™•μΈν•˜λŠ” 데 μ‹œκ°„μ„ ν• μ• ν•˜κ² μŠ΅λ‹ˆλ‹€.

검색 결과에 λŒ€ν•΄ λΆˆνŽΈμ„ λΌμ³λ“œλ € μ£„μ†‘ν•©λ‹ˆλ‹€. μ΄λŠ” μ œκΈ°ν•  μƒˆλ‘œμš΄ λ¬Έμ œμž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ κ°„λ‹¨νžˆ λ§ν•΄μ„œ: μ•„λ‹ˆμš”, μž‘λ™ 방식이 μ•„λ‹™λ‹ˆλ‹€. κ²°κ³Όλ₯Ό λ³΅μ œν•  수 μžˆμ—ˆκ³  확인해야 ν•©λ‹ˆλ‹€.

검색 결과에 λŒ€ν•΄ λΆˆνŽΈμ„ λΌμ³λ“œλ € μ£„μ†‘ν•©λ‹ˆλ‹€. μ΄λŠ” μ œκΈ°ν•  μƒˆλ‘œμš΄ λ¬Έμ œμž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ κ°„λ‹¨νžˆ λ§ν•΄μ„œ: μ•„λ‹ˆμš”, μž‘λ™ 방식이 μ•„λ‹™λ‹ˆλ‹€. κ²°κ³Όλ₯Ό λ³΅μ œν•  수 μžˆμ—ˆκ³  확인해야 ν•©λ‹ˆλ‹€.

μ‹€μ œλ‘œ λ‚˜λŠ” 검색 앱을 ν™•μΈν•˜κ³  .distinct() λ˜λŠ” 예제λ₯Ό μ‚¬μš©ν–ˆμ„ λ•Œ
context["articles_list"] = Article.objects.filter(Q( title__icontains=query) | Q(content__icontains=query) | Q( tags__name__icontains=query), status="P").distinct()

그러면 λ…νŠΉν•œ κ²°κ³Όλ₯Ό 얻을 수 μžˆμŠ΅λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰

κ΄€λ ¨ 문제

norouzzadeh picture norouzzadeh  Β·  3μ½”λ©˜νŠΈ

sebastian-code picture sebastian-code  Β·  11μ½”λ©˜νŠΈ

ssahilsahil798 picture ssahilsahil798  Β·  5μ½”λ©˜νŠΈ

mwanjajoel picture mwanjajoel  Β·  5μ½”λ©˜νŠΈ

Shekharnunia picture Shekharnunia  Β·  10μ½”λ©˜νŠΈ