Air table là gì

Airtable là một công cụ tuyệt vời.

Đó là sự kết hợp giữa bảng tính và cơ sở dữ liệu.

Là một nhà phát triển, bạn có thể tạo cơ sở dữ liệu với giao diện rất đẹp để sử dụng, với sự dễ sử dụng và chỉnh sửa bảng tính, đồng thời bạn có thể dễ dàng cập nhật hồ sơ của mình ngay cả từ ứng dụng dành cho thiết bị di động.

Hoàn hảo cho nguyên mẫu

Tuy nhiên, Airtable không chỉ là một bảng tính được tôn vinh. Nó là một công cụ hoàn hảo cho một nhà phát triển muốn tạo nguyên mẫu hoặc tạo MVP của một ứng dụng.

MVP, hoặc Sản phẩm khả thi tối thiểu, là một phiên bản ban đầu của một ứng dụng hoặc sản phẩm.

Hầu hết các sản phẩm không thành công không phải do hạn chế kỹ thuật hoặc do "ngăn xếp không mở rộng quy mô". Họ thất bại vì hoặc không có nhu cầu hoặc nhà sản xuất không có một cách rõ ràng để tiếp thị sản phẩm.

Tạo MVP giảm thiểu rủi ro khi dành hàng tháng trời để cố gắng xây dựng một ứng dụng hoàn hảo và sau đó nhận ra rằng không ai muốn điều đó.

Một API tuyệt vời

Airtable có một API hoàn toàn tuyệt vời để làm việc, giúp bạn dễ dàng giao tiếp với cơ sở dữ liệu Airtable của mình theo lập trình.

Đây là điều khiến nó vượt trội gấp 10 lần so với một bảng tính tiêu chuẩn, khi nói đến việc xử lý dữ liệu VÀ giúp dễ dàng xác thực.

API có giới hạn 5 yêu cầu mỗi giây, không cao, nhưng vẫn hợp lý để làm việc với hầu hết các tình huống.

Một tài liệu tuyệt vời cho API

Đây là tài liệu API Airtable://airtable.com/api.

Là nhà phát triển, chúng tôi dành rất nhiều thời gian để đọc tài liệu và cố gắng tìm ra cách hoạt động của mọi thứ.

Một API rất phức tạp vì bạn cần phải tương tác với một dịch vụ và bạn muốn tìm hiểu cả những gì mà dịch vụ đó thể hiện và cách bạn có thể sử dụng API để làm những gì bạn cần.

Airtable nâng cao tiêu chuẩn cho bất kỳ tài liệu API nào ngoài đó. Nó đặt các khóa API, ID cơ sở và tên bảng của bạn trực tiếp trong các ví dụ, vì vậy bạn chỉ cần sao chép và dán chúng vào cơ sở mã của mình và bạn đã sẵn sàng.

Không chỉ vậy, các ví dụ trong tài liệu API sử dụng dữ liệu thực tế trong bảng của bạn. Trong hình ảnh này, hãy lưu ý cách các giá trị mẫu của trường là giá trị thực mà tôi đặt trong bảng của mình:

Tài liệu API cung cấp các ví dụ sử dụngcurl:

và khách hàng chính thức Node.js của họ:

Ứng dụng khách Node.js chính thức

Airtable duy trì chính thứcAirtable.jsThư viện máy khách Node.js, một cách rất dễ sử dụng để truy cập dữ liệu Airtable.

Thật tiện lợi vì nó cung cấp một logic tích hợp để xử lý các giới hạn tốc độ và thử lại các yêu cầu khi bạn vượt quá chúng.

Hãy xem một vài thao tác phổ biến mà bạn có thể thực hiện với API, nhưng trước tiên hãy xác định một vài giá trị mà chúng ta sẽ tham chiếu trong mã:

  • API_KEY: khóa API Airtable
  • BASE_NAME: tên của cơ sở bạn sẽ làm việc với
  • TABLE_NAME: tên của bảng trong cơ sở đó.
  • VIEW_NAME: tên của dạng xem bảng.

Một cơ sở là một ngắn hạn chocơ sở dữ liệu, và nó có thể chứa nhiều bảng.

Một bảng có một hoặc nhiều dạng xem sắp xếp cùng một dữ liệu theo một cách khác. Luôn có ít nhất một chế độ xem [xem thêm về lượt xem]

Xác thực

Bạn có thể thiết lậpAIRTABLE_API_KEYbiến môi trường và Airbase.js sẽ tự động sử dụng hoặc thêm nó vào mã của bạn một cách rõ ràng:

const Airtable = require['airtable']

Airtable.configure[{ apiKey: API_KEY }]

Khởi tạo một cơ sở

const base = require['airtable'].base[BASE_NAME]

hoặc, nếu bạn đã khởi tạo biến Airtable, hãy sử dụng

const base = Airtable.base[BASE_NAME]

Tham chiếu một bảng

Với mộtbaseđối tượng, bây giờ bạn có thể tham chiếu một bảng bằng cách sử dụng

const table = base[TABLE_NAME]

Truy xuất bản ghi bảng

Bất kỳ hàng nào bên trong bảng được gọi làghi lại.

Airtable trả về tối đa 100 bản ghi trong mỗi trang kết quả. Nếu bạn biết rằng bạn sẽ không bao giờ sử dụng quá 100 mục trong một bảng, chỉ cần sử dụngfirstPagephương pháp:

table.select[{ view: VIEW_NAME }].firstPage[[err, records] => { if [err] { console.error[err] return } //all records are in the `records` array, do something with it

}]

Nếu bạn có [hoặc mong đợi] hơn 100 bản ghi, bạn cần phân trang thông qua chúng, bằng cách sử dụngeachPagephương pháp:

let records = []

// called for every page of records const processPage = [partialRecords, fetchNextPage] => { records = […records, …partialRecords] fetchNextPage[] }

// called when all the records have been retrieved const processRecords = [err] => { if [err] { console.error[err] return }

//process the records array and do something with it }

table.select[{ view: VIEW_NAME }].eachPage[processPage, processRecords]

Kiểm tra nội dung hồ sơ

Bất kỳ bản ghi nào cũng có một số thuộc tính mà bạn có thể kiểm tra.

Đầu tiên, bạn có thể lấy ID của nó:

record.id

//or record.getId[]

và thời điểm tạo:

và bạn có thể lấy bất kỳ thuộc tính nào của nó mà bạn truy cập thông qua tên cột:

record.get['Title'] record.get['Description'] record.get['Date']

Nhận một bản ghi cụ thể

Bạn có thể nhận được một bản ghi cụ thể theo ID:

const record_id = //...

table.find[record_id, [err, record] => { if [err] { console.error[err] return } console.log[record]

}]

Hoặc theo một giá trị cột cụ thể:

const getData = url => { table.select[{ filterByFormula: `{url} = "${url}"` }].eachPage[function page[records] { records.forEach[function[record] { console.dir[record.get['json']] }] }] }

Nó cũng tiện dụng để sử dụng.all[]và async / await nếu bạn muốn trả về dữ liệu từ hàm:

const getData = async url => { const records = await table.select[{ filterByFormula: `{url} = "${url}"` }].all[]

return records[0].get[‘json’] }

Lưu ý rằngall[]tìm nạp đồng bộ tất cả các trang kết quả và tôi chỉ sử dụng nó khi bạn có một vài trang kết quả [hoặc 1 kết quả, như trong trường hợp này]

Tạo một bản ghi mới

Bạn có thể thêm một bản ghi mới

table.create[{ "Title": "Tutorial: create a Spreadsheet using React", "Link": "//flaviocopes.com/react-spreadsheet/", }, [err, record] => { if [err] { console.error[err] return } console.log[record.getId[]]

}]

Bạn có thể cập nhật một trường duy nhất của bản ghi và để nguyên các trường khác, sử dụngupdate:

const record_id = //...

table.update[record_id, { "Title": "The modified title" }, [err, record] => { if [err] { console.error[err] return } console.log[record.get['Title']]

}]

Hoặc, bạn có thể cập nhật một số trường trong bản ghi vàtẩu thoátnhững người bạn đã không chạm vào, vớireplace:

const record_id = //...

table.replace[record_id, { "Title": "The modified title", "Description": "Another description" }, [err, record] => { if [err] { console.error[err] return } console.log[record]

}]

Xóa bản ghi

Một bản ghi có thể được xóa bằng cách sử dụng

const record_id = //...

table.destroy[record_id, [err, deletedRecord] => { if [err] { console.error[err] return } console.log['Deleted record', deletedRecord.id]

}]



Video liên quan

Chủ Đề