<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
	<id>https://devcafe.co.kr/w/index.php?action=history&amp;feed=atom&amp;title=Datatable_%EC%88%98%EC%A0%95_%EC%82%AD%EC%A0%9C_%EB%B0%A9%EB%B2%95</id>
	<title>Datatable 수정 삭제 방법 - 편집 역사</title>
	<link rel="self" type="application/atom+xml" href="https://devcafe.co.kr/w/index.php?action=history&amp;feed=atom&amp;title=Datatable_%EC%88%98%EC%A0%95_%EC%82%AD%EC%A0%9C_%EB%B0%A9%EB%B2%95"/>
	<link rel="alternate" type="text/html" href="https://devcafe.co.kr/w/index.php?title=Datatable_%EC%88%98%EC%A0%95_%EC%82%AD%EC%A0%9C_%EB%B0%A9%EB%B2%95&amp;action=history"/>
	<updated>2026-05-19T11:39:20Z</updated>
	<subtitle>이 문서의 편집 역사</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://devcafe.co.kr/w/index.php?title=Datatable_%EC%88%98%EC%A0%95_%EC%82%AD%EC%A0%9C_%EB%B0%A9%EB%B2%95&amp;diff=2154&amp;oldid=prev</id>
		<title>Devcafe: 새 문서: == Datatable 추갸 수정 삭제 방법 ==  jQuery DataTables에서 데이터 입력, 수정, 삭제를 구현하는 방법은 일반적으로 AJAX 통신을 통해 서버와 연동하는 방식이 사용됩니다. DataTables 자체는 프론트엔드 UI 라이브러리이기 때문에, 실제 데이터베이스 조작은 서버 측에서 담당하게 됩니다. 여기서는 각 작업별로 일반적인 구현 흐름과 필요한 개념들을 설명해 드리겠습니다. 예...</title>
		<link rel="alternate" type="text/html" href="https://devcafe.co.kr/w/index.php?title=Datatable_%EC%88%98%EC%A0%95_%EC%82%AD%EC%A0%9C_%EB%B0%A9%EB%B2%95&amp;diff=2154&amp;oldid=prev"/>
		<updated>2025-07-10T23:03:34Z</updated>

		<summary type="html">&lt;p&gt;새 문서: == Datatable 추갸 수정 삭제 방법 ==  jQuery DataTables에서 데이터 입력, 수정, 삭제를 구현하는 방법은 일반적으로 AJAX 통신을 통해 서버와 연동하는 방식이 사용됩니다. DataTables 자체는 프론트엔드 UI 라이브러리이기 때문에, 실제 데이터베이스 조작은 서버 측에서 담당하게 됩니다. 여기서는 각 작업별로 일반적인 구현 흐름과 필요한 개념들을 설명해 드리겠습니다. 예...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Datatable 추갸 수정 삭제 방법 ==&lt;br /&gt;
 jQuery DataTables에서 데이터 입력, 수정, 삭제를 구현하는 방법은 일반적으로 AJAX 통신을 통해 서버와 연동하는 방식이 사용됩니다. DataTables 자체는 프론트엔드 UI 라이브러리이기 때문에, 실제 데이터베이스 조작은 서버 측에서 담당하게 됩니다.&lt;br /&gt;
여기서는 각 작업별로 일반적인 구현 흐름과 필요한 개념들을 설명해 드리겠습니다. 예시 코드는 개념 이해를 돕기 위한 간략화된 형태이며, 실제 구현 시에는 보안, 유효성 검사, 에러 처리 등을 반드시 고려해야 합니다.&lt;br /&gt;
jQuery DataTables에서 데이터 입력, 수정, 삭제 구현 개요&lt;br /&gt;
 * DataTables 초기화: 데이터를 표시할 테이블을 DataTables로 초기화합니다.&lt;br /&gt;
 * AJAX 통신: 입력, 수정, 삭제 요청은 AJAX를 통해 서버로 전송합니다.&lt;br /&gt;
 * 서버 측 처리: 서버는 AJAX 요청을 받아 데이터베이스 작업을 수행합니다.&lt;br /&gt;
 * 응답 처리: 서버로부터의 응답 (성공/실패, 업데이트된 데이터 등)을 받아 DataTables를 갱신합니다.&lt;br /&gt;
1. 데이터 입력 (Create)&lt;br /&gt;
새로운 데이터를 DataTables에 추가하는 방법입니다.&lt;br /&gt;
일반적인 흐름:&lt;br /&gt;
 * 입력 폼 제공: 사용자에게 데이터를 입력할 수 있는 폼 (모달, 별도 페이지 등)을 제공합니다.&lt;br /&gt;
 * 폼 제출: 사용자가 폼을 제출하면, 폼 데이터를 수집합니다.&lt;br /&gt;
 * AJAX 요청: 수집된 데이터를 서버의 &amp;quot;데이터 추가&amp;quot; API 엔드포인트로 POST 방식으로 AJAX 요청을 보냅니다.&lt;br /&gt;
   * 예시 데이터: {&amp;#039;name&amp;#039;: &amp;#039;새로운 항목&amp;#039;, &amp;#039;description&amp;#039;: &amp;#039;설명&amp;#039;}&lt;br /&gt;
 * 서버 응답 처리:&lt;br /&gt;
   * 성공: 서버에서 성공적으로 데이터를 추가하고, 추가된 데이터 (또는 성공 메시지)를 응답으로 보냅니다. DataTables를 draw() 메소드를 사용하여 다시 그리거나, row.add() 메소드를 사용하여 새로 추가된 행을 직접 DataTables에 추가합니다.&lt;br /&gt;
   * 실패: 서버에서 에러 메시지를 응답으로 보내고, 사용자에게 에러를 알립니다.&lt;br /&gt;
프론트엔드 (JavaScript) 예시:&lt;br /&gt;
// 가상의 입력 폼이 있다고 가정&lt;br /&gt;
$(&amp;#039;#addRecordForm&amp;#039;).submit(function(e) {&lt;br /&gt;
    e.preventDefault(); // 기본 폼 제출 방지&lt;br /&gt;
&lt;br /&gt;
    const formData = {&lt;br /&gt;
        name: $(&amp;#039;#inputName&amp;#039;).val(),&lt;br /&gt;
        description: $(&amp;#039;#inputDescription&amp;#039;).val()&lt;br /&gt;
        // ... 다른 필드들&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    $.ajax({&lt;br /&gt;
        url: &amp;#039;/api/records&amp;#039;, // 데이터를 추가할 서버 API 엔드포인트&lt;br /&gt;
        type: &amp;#039;POST&amp;#039;,&lt;br /&gt;
        contentType: &amp;#039;application/json&amp;#039;, // JSON 형식으로 데이터 전송&lt;br /&gt;
        data: JSON.stringify(formData),&lt;br /&gt;
        success: function(response) {&lt;br /&gt;
            if (response.success) {&lt;br /&gt;
                // 서버에서 성공적으로 추가된 데이터를 반환한다고 가정&lt;br /&gt;
                // DataTable에 새 행 추가&lt;br /&gt;
                $(&amp;#039;#myDataTable&amp;#039;).DataTable().row.add(response.newRecord).draw();&lt;br /&gt;
                alert(&amp;#039;데이터가 성공적으로 추가되었습니다.&amp;#039;);&lt;br /&gt;
                // 모달 닫기 등&lt;br /&gt;
                $(&amp;#039;#addRecordModal&amp;#039;).modal(&amp;#039;hide&amp;#039;);&lt;br /&gt;
            } else {&lt;br /&gt;
                alert(&amp;#039;데이터 추가 실패: &amp;#039; + response.message);&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        error: function(xhr, status, error) {&lt;br /&gt;
            alert(&amp;#039;데이터 추가 중 오류 발생: &amp;#039; + error);&lt;br /&gt;
            console.error(xhr.responseText);&lt;br /&gt;
        }&lt;br /&gt;
    });&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
서버 측 (예: Node.js Express)&lt;br /&gt;
// app.js (가상)&lt;br /&gt;
app.post(&amp;#039;/api/records&amp;#039;, (req, res) =&amp;gt; {&lt;br /&gt;
    const { name, description } = req.body;&lt;br /&gt;
    // 데이터베이스에 데이터 삽입 로직&lt;br /&gt;
    // 예시: const newRecordId = db.insertRecord({ name, description });&lt;br /&gt;
    // const newRecord = db.getRecordById(newRecordId); // 삽입된 데이터 다시 조회 (필요시)&lt;br /&gt;
&lt;br /&gt;
    if (/* 삽입 성공 */) {&lt;br /&gt;
        res.json({ success: true, message: &amp;#039;데이터 추가 성공&amp;#039;, newRecord: { id: Date.now(), name, description } }); // 가상의 ID 부여&lt;br /&gt;
    } else {&lt;br /&gt;
        res.status(500).json({ success: false, message: &amp;#039;데이터 추가 실패&amp;#039; });&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
2. 데이터 수정 (Update)&lt;br /&gt;
기존 DataTables의 데이터를 수정하는 방법입니다.&lt;br /&gt;
일반적인 흐름:&lt;br /&gt;
 * 수정 버튼/행 클릭: DataTables의 특정 행에 수정 버튼을 추가하거나, 행 자체를 클릭했을 때 수정 이벤트를 트리거합니다.&lt;br /&gt;
 * 데이터 로드 및 폼 표시: 선택된 행의 데이터를 가져와 수정 폼 (모달 등)에 채웁니다. 이때, 수정할 데이터의 고유 ID(Primary Key)를 반드시 함께 가져와야 합니다.&lt;br /&gt;
 * 폼 제출: 사용자가 수정된 데이터를 폼에 입력하고 제출합니다.&lt;br /&gt;
 * AJAX 요청: 수정된 데이터와 고유 ID를 서버의 &amp;quot;데이터 수정&amp;quot; API 엔드포인트로 PUT (또는 POST) 방식으로 AJAX 요청을 보냅니다.&lt;br /&gt;
   * 예시 데이터: {&amp;#039;id&amp;#039;: 123, &amp;#039;name&amp;#039;: &amp;#039;수정된 항목&amp;#039;, &amp;#039;description&amp;#039;: &amp;#039;새로운 설명&amp;#039;}&lt;br /&gt;
 * 서버 응답 처리:&lt;br /&gt;
   * 성공: 서버에서 성공적으로 데이터를 업데이트하고, 업데이트된 데이터 (또는 성공 메시지)를 응답으로 보냅니다. DataTables를 draw() 메소드를 사용하여 다시 그리거나, row.data().invalidate().draw() 메소드를 사용하여 해당 행의 데이터를 갱신합니다.&lt;br /&gt;
   * 실패: 서버에서 에러 메시지를 응답으로 보내고, 사용자에게 에러를 알립니다.&lt;br /&gt;
프론트엔드 (JavaScript) 예시:&lt;br /&gt;
// DataTables 초기화 시 수정 버튼 추가&lt;br /&gt;
$(&amp;#039;#myDataTable&amp;#039;).DataTable({&lt;br /&gt;
    // ... 다른 옵션들&lt;br /&gt;
    columns: [&lt;br /&gt;
        { data: &amp;#039;id&amp;#039; },&lt;br /&gt;
        { data: &amp;#039;name&amp;#039; },&lt;br /&gt;
        { data: &amp;#039;description&amp;#039; },&lt;br /&gt;
        {&lt;br /&gt;
            data: null, // 데이터가 아닌 커스텀 컬럼&lt;br /&gt;
            render: function(data, type, row) {&lt;br /&gt;
                return &amp;#039;&amp;lt;button class=&amp;quot;editBtn&amp;quot; data-id=&amp;quot;&amp;#039; + row.id + &amp;#039;&amp;quot;&amp;gt;수정&amp;lt;/button&amp;gt;&amp;#039;;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ]&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// 수정 버튼 클릭 이벤트&lt;br /&gt;
$(&amp;#039;#myDataTable tbody&amp;#039;).on(&amp;#039;click&amp;#039;, &amp;#039;.editBtn&amp;#039;, function() {&lt;br /&gt;
    const id = $(this).data(&amp;#039;id&amp;#039;);&lt;br /&gt;
    // 실제 DataTables 행 데이터 가져오기&lt;br /&gt;
    const rowData = $(&amp;#039;#myDataTable&amp;#039;).DataTable().row($(this).parents(&amp;#039;tr&amp;#039;)).data();&lt;br /&gt;
&lt;br /&gt;
    // 수정 폼에 데이터 채우기 (가상)&lt;br /&gt;
    $(&amp;#039;#editId&amp;#039;).val(rowData.id);&lt;br /&gt;
    $(&amp;#039;#editName&amp;#039;).val(rowData.name);&lt;br /&gt;
    $(&amp;#039;#editDescription&amp;#039;).val(rowData.description);&lt;br /&gt;
    $(&amp;#039;#editRecordModal&amp;#039;).modal(&amp;#039;show&amp;#039;);&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// 수정 폼 제출&lt;br /&gt;
$(&amp;#039;#editRecordForm&amp;#039;).submit(function(e) {&lt;br /&gt;
    e.preventDefault();&lt;br /&gt;
&lt;br /&gt;
    const formData = {&lt;br /&gt;
        id: $(&amp;#039;#editId&amp;#039;).val(),&lt;br /&gt;
        name: $(&amp;#039;#editName&amp;#039;).val(),&lt;br /&gt;
        description: $(&amp;#039;#editDescription&amp;#039;).val()&lt;br /&gt;
        // ... 다른 필드들&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    $.ajax({&lt;br /&gt;
        url: &amp;#039;/api/records/&amp;#039; + formData.id, // 수정할 서버 API 엔드포인트 (PUT 사용 권장)&lt;br /&gt;
        type: &amp;#039;PUT&amp;#039;, // 또는 POST&lt;br /&gt;
        contentType: &amp;#039;application/json&amp;#039;,&lt;br /&gt;
        data: JSON.stringify(formData),&lt;br /&gt;
        success: function(response) {&lt;br /&gt;
            if (response.success) {&lt;br /&gt;
                // DataTable 해당 행 업데이트&lt;br /&gt;
                const table = $(&amp;#039;#myDataTable&amp;#039;).DataTable();&lt;br /&gt;
                const row = table.row(function(idx, data, node) {&lt;br /&gt;
                    return data.id === response.updatedRecord.id;&lt;br /&gt;
                });&lt;br /&gt;
                if (row.length) {&lt;br /&gt;
                    row.data(response.updatedRecord).invalidate().draw(); // 데이터 갱신 및 다시 그리기&lt;br /&gt;
                }&lt;br /&gt;
                alert(&amp;#039;데이터가 성공적으로 수정되었습니다.&amp;#039;);&lt;br /&gt;
                $(&amp;#039;#editRecordModal&amp;#039;).modal(&amp;#039;hide&amp;#039;);&lt;br /&gt;
            } else {&lt;br /&gt;
                alert(&amp;#039;데이터 수정 실패: &amp;#039; + response.message);&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        error: function(xhr, status, error) {&lt;br /&gt;
            alert(&amp;#039;데이터 수정 중 오류 발생: &amp;#039; + error);&lt;br /&gt;
            console.error(xhr.responseText);&lt;br /&gt;
        }&lt;br /&gt;
    });&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
서버 측 (예: Node.js Express)&lt;br /&gt;
app.put(&amp;#039;/api/records/:id&amp;#039;, (req, res) =&amp;gt; {&lt;br /&gt;
    const recordId = req.params.id;&lt;br /&gt;
    const { name, description } = req.body;&lt;br /&gt;
    // 데이터베이스에서 recordId에 해당하는 데이터 업데이트 로직&lt;br /&gt;
    // 예시: const updated = db.updateRecord(recordId, { name, description });&lt;br /&gt;
    // const updatedRecord = db.getRecordById(recordId); // 업데이트된 데이터 다시 조회 (필요시)&lt;br /&gt;
&lt;br /&gt;
    if (/* 업데이트 성공 */) {&lt;br /&gt;
        res.json({ success: true, message: &amp;#039;데이터 수정 성공&amp;#039;, updatedRecord: { id: recordId, name, description } });&lt;br /&gt;
    } else {&lt;br /&gt;
        res.status(500).json({ success: false, message: &amp;#039;데이터 수정 실패&amp;#039; });&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
3. 데이터 삭제 (Delete)&lt;br /&gt;
DataTables에서 데이터를 삭제하는 방법입니다.&lt;br /&gt;
일반적인 흐름:&lt;br /&gt;
 * 삭제 버튼 클릭: DataTables의 특정 행에 삭제 버튼을 추가하고, 클릭 이벤트를 트리거합니다.&lt;br /&gt;
 * 확인 프롬프트: 사용자에게 삭제할 것인지 확인하는 메시지를 표시합니다 (예: confirm() 함수).&lt;br /&gt;
 * AJAX 요청: 삭제할 데이터의 고유 ID를 서버의 &amp;quot;데이터 삭제&amp;quot; API 엔드포인트로 DELETE (또는 POST) 방식으로 AJAX 요청을 보냅니다.&lt;br /&gt;
   * 예시 데이터: {&amp;#039;id&amp;#039;: 123} (쿼리 파라미터나 URL 경로를 통해 전달하는 것이 일반적)&lt;br /&gt;
 * 서버 응답 처리:&lt;br /&gt;
   * 성공: 서버에서 성공적으로 데이터를 삭제하고, 성공 메시지를 응답으로 보냅니다. DataTables에서 해당 행을 row().remove().draw() 메소드를 사용하여 삭제합니다.&lt;br /&gt;
   * 실패: 서버에서 에러 메시지를 응답으로 보내고, 사용자에게 에러를 알립니다.&lt;br /&gt;
프론트엔드 (JavaScript) 예시:&lt;br /&gt;
// DataTables 초기화 시 삭제 버튼 추가 (위의 수정 버튼 예시와 유사)&lt;br /&gt;
$(&amp;#039;#myDataTable&amp;#039;).DataTable({&lt;br /&gt;
    // ... 다른 옵션들&lt;br /&gt;
    columns: [&lt;br /&gt;
        { data: &amp;#039;id&amp;#039; },&lt;br /&gt;
        { data: &amp;#039;name&amp;#039; },&lt;br /&gt;
        { data: &amp;#039;description&amp;#039; },&lt;br /&gt;
        {&lt;br /&gt;
            data: null,&lt;br /&gt;
            render: function(data, type, row) {&lt;br /&gt;
                return &amp;#039;&amp;lt;button class=&amp;quot;editBtn&amp;quot; data-id=&amp;quot;&amp;#039; + row.id + &amp;#039;&amp;quot;&amp;gt;수정&amp;lt;/button&amp;gt;&amp;#039; +&lt;br /&gt;
                       &amp;#039;&amp;lt;button class=&amp;quot;deleteBtn&amp;quot; data-id=&amp;quot;&amp;#039; + row.id + &amp;#039;&amp;quot;&amp;gt;삭제&amp;lt;/button&amp;gt;&amp;#039;;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    ]&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// 삭제 버튼 클릭 이벤트&lt;br /&gt;
$(&amp;#039;#myDataTable tbody&amp;#039;).on(&amp;#039;click&amp;#039;, &amp;#039;.deleteBtn&amp;#039;, function() {&lt;br /&gt;
    const id = $(this).data(&amp;#039;id&amp;#039;);&lt;br /&gt;
    const $row = $(this).parents(&amp;#039;tr&amp;#039;); // 삭제할 행 참조&lt;br /&gt;
&lt;br /&gt;
    if (confirm(&amp;#039;정말로 이 데이터를 삭제하시겠습니까?&amp;#039;)) {&lt;br /&gt;
        $.ajax({&lt;br /&gt;
            url: &amp;#039;/api/records/&amp;#039; + id, // 삭제할 서버 API 엔드포인트&lt;br /&gt;
            type: &amp;#039;DELETE&amp;#039;, // 또는 POST&lt;br /&gt;
            success: function(response) {&lt;br /&gt;
                if (response.success) {&lt;br /&gt;
                    // DataTable에서 해당 행 삭제&lt;br /&gt;
                    $(&amp;#039;#myDataTable&amp;#039;).DataTable().row($row).remove().draw();&lt;br /&gt;
                    alert(&amp;#039;데이터가 성공적으로 삭제되었습니다.&amp;#039;);&lt;br /&gt;
                } else {&lt;br /&gt;
                    alert(&amp;#039;데이터 삭제 실패: &amp;#039; + response.message);&lt;br /&gt;
                }&lt;br /&gt;
            },&lt;br /&gt;
            error: function(xhr, status, error) {&lt;br /&gt;
                alert(&amp;#039;데이터 삭제 중 오류 발생: &amp;#039; + error);&lt;br /&gt;
                console.error(xhr.responseText);&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
서버 측 (예: Node.js Express)&lt;br /&gt;
app.delete(&amp;#039;/api/records/:id&amp;#039;, (req, res) =&amp;gt; {&lt;br /&gt;
    const recordId = req.params.id;&lt;br /&gt;
    // 데이터베이스에서 recordId에 해당하는 데이터 삭제 로직&lt;br /&gt;
    // 예시: const deleted = db.deleteRecord(recordId);&lt;br /&gt;
&lt;br /&gt;
    if (/* 삭제 성공 */) {&lt;br /&gt;
        res.json({ success: true, message: &amp;#039;데이터 삭제 성공&amp;#039; });&lt;br /&gt;
    } else {&lt;br /&gt;
        res.status(500).json({ success: false, message: &amp;#039;데이터 삭제 실패&amp;#039; });&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
중요한 고려사항&lt;br /&gt;
 * 서버 측 구현: 위에 제시된 서버 측 코드는 단순한 예시이며, 실제로는 데이터베이스 연동 (SQL, NoSQL 등), 비즈니스 로직, 인증/인가, 에러 로깅 등이 복잡하게 구현되어야 합니다.&lt;br /&gt;
 * AJAX 통신 라이브러리: 여기서는 jQuery의 $.ajax()를 사용했지만, fetch API나 axios와 같은 다른 AJAX 라이브러리를 사용할 수도 있습니다.&lt;br /&gt;
 * 유효성 검사: 프론트엔드와 백엔드 모두에서 사용자 입력에 대한 유효성 검사를 철저히 해야 합니다.&lt;br /&gt;
 * 사용자 경험 (UX): 데이터 추가/수정/삭제 시 로딩 스피너, 성공/실패 알림, 입력 폼의 초기화 등을 통해 사용자에게 피드백을 제공하는 것이 좋습니다.&lt;br /&gt;
 * 보안: Cross-Site Scripting (XSS), Cross-Site Request Forgery (CSRF) 등 웹 보안 취약점에 대한 방어 기법을 적용해야 합니다.&lt;br /&gt;
 * DataTables ajax 옵션: DataTables를 초기화할 때 ajax 옵션을 사용하여 서버 사이드 처리를 구성하면, 검색, 정렬, 페이징 등을 서버에서 처리할 수 있어 대량의 데이터 처리 시 성능상 이점을 얻을 수 있습니다. 이 경우 데이터 추가/수정/삭제 후에는 $(&amp;#039;#myDataTable&amp;#039;).DataTable().ajax.reload();를 사용하여 DataTables를 다시 로드하는 것이 일반적입니다.&lt;br /&gt;
이 가이드를 통해 jQuery DataTables에서 입력, 수정, 삭제 기능을 구현하는 데 도움이 되기를 바랍니다.&lt;/div&gt;</summary>
		<author><name>Devcafe</name></author>
	</entry>
</feed>