๋๋ ์ฃผ๋ก ๊ฐ๋ ์ฑ ๋ฌธ์ ๋ก ์ธํด ๋ด ๊ณํ ๋ฌธ์ ๋ฅผ ์๋ก์ด ๋ฌธ์ ํ์ด์ง๋ก ์ฎ๊ธฐ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ด๋ก ์ธํด ํผ๋์ ๋๋ ค ์ฃ์กํฉ๋๋ค! - @noi5e
Comment Editor ํ๋ก์ ํธ๊ฐ ์์ฒด ์ ์ฅ์๋ก ๋ถ๋ฆฌ๋ ์ ์๋ ์ดํ ๋จ๊ณ์ ๊ฒฝ์ฐ ํ์ค ๋ฆด๋ฆฌ์ค ์ฃผ๊ธฐ๋ฅผ ๋ง๋๋ ๋ฐ ๋์์ด ๋๋ Sagarpreet์ด ๋ฌธ์ํํ ์ด ์ํฌํ๋ก๋ฅผ ์ ์คํ๊ฒ ๊ณ ๋ คํ ์ ์์ต๋๋ค!
https://publiclab.org/notes/sagarpreet_chadha/10-20-2020/first-timer-only-release-workflow
ํธ์ง ์ค์ธ ์ฃผ์(์๋ก ์์ฑ๋์ง ์์)์ ์ด๋ฏธ์ง๋ฅผ ์ ๋ก๋ํ๋ ๋์ ๊ต์ฐจ ๋ฐฐ์ ๋ ์ฃผ์ ์์์ ์์ ์ฃผ๋ชฉ: https://github.com/publiclab/plots2/issues/8670
๋๋ ์ฃผ๋ก ๊ฐ๋ ์ฑ ๋ฌธ์ ๋ก ์ธํด ๋ด ๊ณํ ๋ฌธ์ ๋ฅผ ์๋ก์ด ๋ฌธ์ ํ์ด์ง๋ก ์ฎ๊ธฐ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ด๋ก ์ธํด ํผ๋์ ๋๋ ค ์ฃ์กํฉ๋๋ค! - @noi5e
์๋
ํ์ธ์ @noi5e , ๊ณํ ๋ฌธ์ ๊ฐ ์ข์ ๋ณด์
๋๋ค.
ํ์ฌ ์์
์ค์ธ ๋ฌธ์ ๋ ๋ฌด์์
๋๊น? PR์ด ์์ผ๋ฉด ์๋ ค์ฃผ์๊ฒ ์ต๋๊น? ์ด๋๊ฐ์ ๊ฐํ๊ฑฐ๋ ๋ช
ํ์ฑ์ ์ถฉ์กฑํ๋ ๊ฒฝ์ฐ ์๋ ค์ฃผ์ญ์์ค. ๊ฐ์ฌํฉ๋๋ค ๐
@sagarpreet-chadha ์ ์ ํจ๊ป ํ์ธํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค! ์ด๊ฒ์ ๊ฒ์ํ ์ดํ๋ก Outreachy์ ๋ํ ๋ด ๋ธ๋ก๊ทธ ํฌ์คํธ๋ฅผ ์์ฑํ๊ณ (์กฐ๊ธ์ฉ, ๊ฑฐ์ ์๋ฃ๋จ), 8618์ ๋ํ PR์ ์กฐ์ฌ ๋ฐ ์์ ํ๊ณ , Rails์ ๋ํด ์ ๋ฆฌํ์ต๋๋ค. ์ด๋ฒ์ฃผ ๋ง์ด ๋ฐฐ์๋๋ค. ๋ค๋ฅธ ์ง์ฅ์์ 2์ผ์ ์ผํ๊ธฐ ๋๋ฌธ์ ์กฐ๊ธ ๋ค์ฒ์ง ๋๋์ด ๋ค์์ง๋ง ์ค๋ ๋ง์ ์ผ์ ๋ฐ๋ผ์ก์๊ณ ๋ด์ผ๊ณผ ์์์ผ์ ๋ ๋ง์ ์ผ์ ํ ๊ฒ์ ๋๋ค. ๋ด์ผ ๋๊ธ ํ ์คํธ๋ฅผ ์์ฑํ ์์ ์ ๋๋ค.
์ฃผ์ ํ
์คํธ์ ๋ํด ์ฝ๊ฐ์ ์ค๋ช
์ด ํ์ํฉ๋๋ค. /plots2/blob/main/test/system/comment_test.rb
๋ฅผ ์ดํด๋ณด๋ ์๋์ผ๋ก ๋๋ API URL์ ํตํด ์ฃผ์์ ์
๋ ฅํ๋ ํ
์คํธ๊ฐ ์ด๋ฏธ ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ ๋ค /wiki/wiki-page-path/comments
๊ฐ๋ฆฌํต๋๋ค.
์ง๋ฌธ ๋ฐ ๋ฉ๋ชจ ํ์ด์ง์ ๋ํ ์ ๋๊ธ ํ
์คํธ๋ฅผ ์์ฑํ๋ ค๋ ๊ฒฝ์ฐ ๋ค๋ฅธ API URL์ ๋ํ ๊ฒ์
๋๊น ์๋๋ฉด ์์ ๋์ผํฉ๋๊น( wiki-page-path
)? rails routes
ํ์ง๋ง ์ด๋ค ๊ฒ์ ํ
์คํธํด์ผ ํ๋์ง ๋ช
ํํ์ง ์์ต๋๋ค. ๋ฏธ๋ฆฌ ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ฝ๋๋ฅผ ๊ฒ์ํ๋ ์๊ฐ์ ์ ์ฝํ ์ ์์ต๋๋ค. ๐
ํธ์ง: ๋ํ ์ ๊ฐ ์์ฑํด์ผ ํ ํ ์คํธ ์ ํ์ ๋ํ ํน์ ์์ฒญ์ด ์๋ ๊ฒฝ์ฐ ์๋ ค์ฃผ์ญ์์ค!
์๋ ํ์ธ์ @noi5e ์ ๋ "wiki comment" ๊ฒฝ๋ก๊ฐ "notes" ๊ฒฝ๋ก์ ๊ตฌ๋ณ๋๋ค๊ณ ์๊ฐํฉ๋๋ค. Wiki์ ๋ฉ๋ชจ๋ ๋ชจ๋ Node์ ๋ณํ์ด์ง๋ง ๊ฝค ์ ์ฌํด์ผ ํฉ๋๋ค.
์ด ์ฝ๋ ์์ญ์ ์ดํด๋ณธ ์ง ๊ฝค ๋์์ง๋ง ์ผ๋ฐ์ ์ผ๋ก Rails์๋ ๊ฐ ๊ฒฝ๋ก์ ๋ํ ์ปจํธ๋กค๋ฌ ์์ ์ด ์์ง๋ง ๋ฆฌ์์ค๊ฐ ํ๋ถํ ๊ฒฝ๋ก์ธ ๊ฒฝ์ฐ๋ ์์ธ์ ๋๋ค. https://guides.rubyonrails.org/routing.html#resource -routing-the-rails-default
์ด ์์ ์ ๋ณด๋ ๊ฒ์ ๋๊ธ์ ๋ณด๊ธฐ ์ํ ๊ฒ์ ๋๋ค.
๊ฒ์๋ฅผ ์ํ ์ปจํธ๋กค๋ฌ ์์ ์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฌ๋ ๋๋์ด ๊ฒฝ๋ก๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒ์ ๋ด ๋๋ค.
ํด๋น ๋ณด๊ธฐ ๋์์ ๊ฐ๋ฆฌํต๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์์ฑ ๊ฒฝ๋ก์ ์์ ์ ์ด๋์ ์์ต๋๊น? Wiki์ ๊ด๋ จ์ด ์์ง๋ง ์ฌ๊ธฐ์ ๋ช ๊ฐ์ง๊ฐ ์์ต๋๋ค.
์ด์ ๋ค๋ฅธ ์ชฝ ๋์ธ ํ ํ๋ฆฟ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ๋ค์์ ๊ธฐ๋ณธ ์๊ฒฌ ์์์ ๋๋ค.
https://github.com/publiclab/plots2/blob/main/app/views/comments/_form.html.erb
์ฌ๊ธฐ <form>
ํ๊ทธ์ ๋
ผ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ง๋ฌธ ๋๊ธ์ด ์ด ์์์ ์ฌ์ฌ์ฉํ ์ ์๋ค๊ณ ์๊ฐํฉ๋๊น?
๋ฐ๋ผ์ POST ๋ฉ์๋๋ก /comments/create/NID
๋ฅผ ๊ฐ๋ฆฌํค๋ฏ๋ก route.rb์ 373ํ์์ ๊ฐ์ฅ ๋ง์ง๋ง ๊ฒฝ๋ก์
๋๋ค. ์ฃผ์ ์ปจํธ๋กค๋ฌ create
์์
์ ํฌ์ธํธ:
๋ฐ๋ผ์ ๋๋ถ๋ถ์ ๋๊ธ์ด ๋๊ธ ์ปจํธ๋กค๋ฌ create
์์
์ ์ฌ์ฉํ๊ณ ์๋ค๊ณ ๋งํ๋ ๊ฒ์ด ์์ ํ๋ค๊ณ ์๊ฐํฉ๋๋ค. ๊ทธ๋ฌ๋ ํด๋น ๊ฒฝ๋ก๊ฐ ์ธ๊ธ๋์ง ์์ ์์คํ
ํ
์คํธ๋ ์ด๋ป์ต๋๊น?
๋ฐ์ํ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ JavaScript ๋ฐฉ๋ฒ์ ํตํ ๊ฒ์ ๋๋ค.
๊ทธ๋ฌ๋ฉด AJAX๋ฅผ ํตํด ๋์ผํ ๊ฒฝ๋ก๋ก ์ ์ถํ๋ ์ด JS ํ์ผ์ด ํ์๋ฉ๋๋ค.
์ฝ๋๋ฒ ์ด์ค๊ฐ ์ง๊ธ ๋ณด์ด๋ ๋ฐฉ์์ผ๋ก ๋ณด๋ฉด sendFormSubmissionAjax()
ํจ์๋ ์์ฒด ํ์ผ์ ์์ ํ์๊ฐ ์๋ ๊ฒ์ฒ๋ผ ๋ณด์ผ ์ ์์ง๋ง @nstjean (ํ์์ ์ธ Outreachy ์กธ์
์, ์๋
ํ์ธ์!!!!!! ๐ ) ๋ด๊ฐ ์์ ํ ์ง์ํ๋ ์ฝ๋๋ฒ ์ด์ค์์ JS ์์ ์ ์ถ์ ๊ฐ์ํํ๊ธฐ ์ํด ๊ณํํ์ต๋๋ค. ์ฌ๊ธฐ์์ด!
๋์์ด ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ์ฝ๋ ๊ตฌ์ฑ ์ธก๋ฉด์์ ๋ณธ ์ต์ ์ ์๋์ง๋ง ํ์คํ ๋ณต์กํฉ๋๋ค. ์ด๊ฒ์ ๋ถ๋ถ์ ์ผ๋ก ์ด๊ฒ์ด ์์ ์ ์ฌ๋ฌ ๋จ๊ณ๋ฅผ ๊ฑฐ์น ํฌ๊ณ ์ค๋๋ ์ฝ๋๋ฒ ์ด์ค์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ฌ์ค ์ค์น๋ ์ง 2๋ ๋จ์ง ๋ ์์คํ ํ ์คํธ ์ ์๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋๊ธ ์ ์ถ์ ๋ํ ํ์คํ ํ ์คํธ๋ฅผ ํ ๋ฐฉ๋ฒ์ด ์์์ต๋๋ค! ๊ทธ๋์ ๋์์์ด ๊นจ์ก์ต๋๋ค :-(
๊ฐ์ฌํฉ๋๋ค ์ฌ๋ฌ๋ถ!!!
@jywarren ๋์์ด ๋ง์ด ๋๊ณ ์์ธํ๊ฒ
๋ํ ๋ค์ ์ฌํญ์ ๋ช ํํ ํ๋ ค๊ณ ํฉ๋๋ค.
"์์ด์ฝ ์ ์ฅ ๋ฐ ๋ณต๊ตฌ Mimi์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ ๋ฐํ๋ ์ฃผ์ ๊ธฐ๋ฅ"(์ดํดํ์ง ์์)
https://pad.publiclab.org/p/outreachy ์์ ์ค์ ๋ก ์ด๊ฒ์ ์ฐพ์ ์ ์์์ต๋๋ค. ์ด๋์์ ์์ต๋๊น? ์ด๋ ดํ์ด ๋ฏ์ต์ ์๋ฆฌ๊ฐ ๋ฉ๋๋ค... ์ฃ์กํฉ๋๋ค!
๋๋๋ก ๋ฏธ๋ฆฌ๋ณด๊ธฐ๊ฐ ์๋ํ์ง ์์ต๋๋ค(์ฌ์ํ ์ ์์)
ํ ์คํธ ์ฝ๋๋ฅผ ์ฌ๊ตฌ์ฑํ ๋ ์ฃผ์ ํธ์ง๊ธฐ์ ์ฌ๋ฌ ๋ณํ์์ ์๋์ผ๋ก ์คํํ ์ ์๋ ์ผ์ข ์ "ํ์ค ํ ์คํธ ๋ชจ์"์ ๋ํ ์ข์ ํ๋ณด๊ฐ ์๋๊น์? ๋๋ ๊ทธ๊ฒ์ด ๊ทธ๊ฒ์ ์ก์ ์ ์๋์ง, ์๋๋ฉด ์ด๋ฏธ ํด๊ฒฐ๋์๋์ง ๊ถ๊ธํฉ๋๋ค.
๊ตต๊ฒ ๋ฐ ๊ธฐ์ธ์๊ผด ๋ฒํผ์ "๊ต์ฐจ ์ฐ๊ฒฐ"๋์ด ์์ต๋๋ค(์ฌ์ํ ์ ์์).
์ด๊ฒ์ https://github.com/publiclab/plots2/issues/8478 ์ ์๋ ๊ฒ์ผ๋ก ๋ณด์ด๋ฉฐ ์ฃผ์ ํธ์ง๊ธฐ ํ ์คํธ์ ํ์ค ์ ํ๊ตฐ์ ์ด๊ฒ์ ํฌํจํ๊ณ ๋ชจ๋ ๋ณํ์์ ์คํํ๋ ๊ฒ๊ณผ ๊ฐ์ ๋์ผํ ์ ๋ต์ด ๋์์ด ๋ ์ ์๋์ง ๊ถ๊ธํฉ๋๋ค.
ํ์ "๋๋๊ทธ ์ค ๋๋กญ์ผ๋ก ์ด๋ฏธ์ง ์ฝ์ "์ด ์ด๋์๋ ์๋์ง ํ์ธํฉ๋๋ค(์ฌ์ํ ์ ์์, ๋ช ๊ฐ์ง ์๋ฅผ ์ํจ).
์์ ๊ฐ์ ์๋ ์์ต๋๋ค ... ๊ทธ๋ฆฌ๊ณ https://pad.publiclab.org/p/outreachy ์์๋ ์ฐพ์ ์ ์์ผ๋ฏ๋ก ์ด๋์์ ์๋์ง ์๊ณ ๋ ์ถ๊ฐ ํ ์ ์์ต๋๊น?
๋๊ธ ์ข์์ ๋ฌธ์ ("๋๊ธ ์ข์์๊ฐ ์๋ํ์ง ์์ #5113" ์ฐธ์กฐ). ๋ฌธ์ ๋ฅผ ์ดํดํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ๊ธฐ์ ์์๋๋ ๋์์ด ๋ฌด์์ธ์ง ๋ช ํํ ํด์ผ ํฉ๋๋ค.
์ด๊ฒ์ ์ ๋ง ์ค๋๋ ๊ฒ์ผ ์ ์์ต๋๋ค ?? "๋ฐ์" ์์คํ ์ผ๋ก ๋์ฒด๋์๊ธฐ ๋๋ฌธ์ ๋ ์ด์ ๋๊ธ ์ข์์๊ฐ ์์ต๋๋ค. ํ์ง๋ง #5113์ ๋ง๋ Sasha์๊ฒ ๋ฌผ์ด๋ณด๋ฉด์ ๋ช ํํ ํ ์ ์์ต๋๋ค.
๊ฐ์ฌํฉ๋๋ค, @noi5e ! ๋์์ด ๋๊ธธ ๋ฐ๋๋๋ค!!!!
๊ฐ์ฌํฉ๋๋ค @jywarren ํ์คํ ๋์์ด ๋์์ต๋๋ค... ๋น์ ์ด ์ฐพ๊ณ ์๋ ํฌ์ธํธ๊ฐ ์ด Google ๋ฌธ์ ์ ์๋ ๊ฒ ๊ฐ์์
์๋ ํ์ธ์ @noi5e ๋น์ ์ด ์ด๊ฒ์ ๋ณด์๊ฑฐ๋ ์ด๋ฏธ ์์ ํ๋์ง ํ์คํ์ง ์์ง๋ง ์ฐ๋ฆฌ ์๊ฒฌ์์ ์ด๊ฒ์ ์์ ์ฐจ๋ ธ์ต๋๋ค. ์์ ์๋์ ๋ถํ์ํ ํ์ ๋ง๋๊ฐ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
๋ํ ์ด๋ชจํฐ์ฝ ์ฃผ๋ณ์ ๊ฐ๊ฒฉ์ด ์ฝ๊ฐ ๋ฒ์ด๋ ๊ฒ ๊ฐ์ต๋๋ค. GitHub์ ์คํ์ผ๊ณผ ๋น๊ตํ ๋ ์์ชฝ๊ณผ ์๋์ชฝ์ ํฐ์ ํจ๋ฉ์ด ์๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๋์ง ํ์ธํ์ญ์์ค.
๋ค์ PR์์ ๋ค๋ฃฐ ์ ์๋ ๋ช ๊ฐ์ง ์์ ์ผ์ด์ง๋ง ๊ธด๊ธํ ๊ฒ์ ์๋๋๋ค. ๊ฐ์ฌ ํด์!
@jywarren ํ์คํ, ๋๋ ๊ทธ๊ฒ๋ค์ ์์์ฐจ๋ ธ์ต๋๋ค! ๋ด ํ ์ผ์ ์ถ๊ฐ.
๋๋ ๋ํ https://github.com/publiclab/plots2/pull/9045 ์ ์๋ ์ต์ ํ ํ์ ๊ถ๊ธํ์ต๋๋ค. Skylight๊ฐ PublicLab.org์ ์ค์ ๋ก ๋๊ธ์ ๊ฒ์ํ๋ ๋ฐ ๊ฝค ์๊ฐ์ด ๊ฑธ๋ฆด ์ ์์์ ๋ณด์ฌ์ค๋๋ค... ๊ทธ๋ฆฌ๊ณ ๋๋ ์๊ฐํ์ต๋๋ค. ์ฐ๋ฆฌ๋ ์ด๋ ์ ๋ ์ต์ ํํ์ง๋ง ๊ธฐ๋๋งํผ์ ์๋๋๋ค. ๋๊ธ์ ๊ฒ์ํ๋ ๊ฒ์ด ์ฌ์ ํ ๋๋ฆฐ ๋ก๋ฉ ์๊ฐ์ด๋ผ๊ณ ์๊ฐํ์ญ๋๊น? ์ด๊ฒ์ด ์์คํ ํ ์คํธ ๋ฐํ์์ ๊ฐ์ ํ๋ ๋์์ ์ฌ์ฉ์ ๊ฒฝํ๋ ๊ฐ์ ํ๋ ๋ฐฉ๋ฒ์ธ์ง ๊ถ๊ธํฉ๋๋ค.
์ฌ๊ธฐ ์ค๋ ์ท์ด ์์ต๋๋ค. ์ฌ์ ํ ๋๋๋ก ์ต๋ 10์ด๊ฐ ์์๋์ง๋ง ๋ถํํ๋ ์ฐ๋ฆฌ์ ๋ชจ๋ํฐ๋ง์ ์ด ์๊ฐ์ด ์ปจํธ๋กค๋ฌ์์ ์๋น๋๋ ๊ฒ ์ด์์ ํ์ํ๊ธฐ์ ์ถฉ๋ถํ์ง ์์ต๋๋ค.
์ด๊ฒ์ ๋ํ ํ๋ก์ ํธ์ ์๊ตฌ ์ฌํญ์ ์๋์ง๋ง ํฅ๋ฏธ๋ก์ธ ์ ์๋ค๊ณ ์๊ฐํ์ต๋๋ค. ์ด๊ฒ์ ๊ตฌ๋ํ๋ ์ฝ๋๋ here and here ์ ๋๋ค.
์ด๊ฑด ์์งํ ๊ฑฑ์ ์ํ์ ๋ ๋๋๋ฐ.. ๋๊ธ ์ฌ๋ฆฌ๋ ์๊ฐ์ด ๋ง์ด ๋๋ฆฌ๋ค๊ณ ๋๋ผ์ จ๋์?
@jywarren ๋ค! ํ์คํ ๋๊ธ ์ฌ๋ฆฌ๋ ์๊ฐ์ด ๋๋ฌด ๋๋ฆฐ ๊ฒ ๊ฐ์์! (๋ํ ๋๊ธ์ ๋ฐ์ํ ์๊ฐ)
Skylight์ ๊ทธ๊ฒ์ด ํ๋ ์ผ์ ๋ํด ๋ฐฐ์ฐ๋ ๊ฒ์ด ์ฌ๋ฏธ์์ต๋๋ค. ์๋ ์ ํ์ ์์ธ์ด ์ ํํ ๋ฌด์์ธ์ง ๊ถ๊ธํฉ๋๋ค. ActiveRecord ์ฟผ๋ฆฌ์ผ ์ ์๋ค๊ณ ์๊ฐํ์ญ๋๊น?
ํธ์ง: ์ด ๊ณํ ๋ฌธ์ ์ ํ์ฅ ๋ชฉํ ์์๋ฆฌ์คํธ์ ์ถ๊ฐํฉ๋๋ค!
๋๋ ์ฃผ๋ก ๊ฐ๋ ์ฑ ๋ฌธ์ ๋ก ์ธํด ๋ด ๊ณํ ๋ฌธ์ ๋ฅผ ์๋ก์ด ๋ฌธ์ ํ์ด์ง๋ก ์ฎ๊ธฐ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ด๋ก ์ธํด ํผ๋์ ๋๋ ค ์ฃ์กํฉ๋๋ค! - @noi5e
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
@jywarren ๋์์ด ๋ง์ด ๋๊ณ ์์ธํ๊ฒ