Permit params trong Rails

Hôm nay mình xin chia sẻ về cách permit params trong Rails. Khi gửi data cho backend với dạng Content-Type: application/json Trường hợp 1: cái này đơn giản: { phone: "+84935999999" email: "[email protected]" } Ở controller chúng ta sẽ permit: def info_params ...

Tác giả: Tạ Quốc Bảo viết 15:45 ngày 07/09/2018

Enum hack

Giới thiệu Có nhiều cách để viết Enum hơn là làm bánh hay làm tình. Ở bài viết này mình sẽ trình bày một hướng đi, hi vọng mọi người sẽ like :D Kiểu phổ thông Chắc hẳn chúng ta thấy kiểu viết enum này rất quen thuộc, đặc biệt là đối với những ai dùng alamofire enum Result<T> { ...

Tác giả: Hoàng Hải Đăng viết 15:45 ngày 07/09/2018

Elixir cho dân Ruby - Phần 1

Tôi biết đây sẽ là câu hỏi đầu tiên của bất cứ lập trình viên nào trước khi quyết định dành thời gian học một ngôn ngữ nào đó. Có muôn vàn câu trả lời với nhiều quan điểm trái chiều nhưng tôi nghĩ các bạn đều đồng ý với tôi là mục tiêu tối thượng của lập trình là lựa chọn giải pháp hợp lý để ...

Tác giả: Trịnh Tiến Mạnh viết 15:45 ngày 07/09/2018

Tìm hiểu về Collection trong Laravel (Phần 1)

Collection là một class trong Laravel giúp lập trình viên làm việc với mảng dễ dàng hơn, đặc biệt khi thao tác với lượng dữ liệu từ Database vì mặc định trong Laravel kiểu dữ liệu trả về từ Laravel sẽ là Collection. Một điều đặc biệt nữa là giá trị trong collection sẽ bất biến (immutable), nghĩa ...

Tác giả: Bùi Văn Nam viết 15:44 ngày 07/09/2018

[Nghịch ngợm] Lỗ hổng của MXH mới Tsu.co và sự bất cẩn của lập trình viên

Tsu.co là gì? Gần đây mình mới biết đến 1 mạng xã hội mới có tên là Tsu.co nhờ thông qua mấy bài báo trên mạng về việc "Facebook đã ra tay chặn hoàn toàn mạng xã hội Tsu.co" . Để có thể hiểu hơn về Tsu.co các bạn có thể tham khảo trên mạng với từ khóa mình vừa kể trên. Nó có liên quan gì tới ...

Tác giả: Trần Trung Dũng viết 15:44 ngày 07/09/2018

So sánh UX giữa Google Maps và Apple Maps (phần 1)

Bài phân tích này lược dịch từ một bài trong chuỗi series về UX của UX Launchpad. Bạn có thể tìm đọc bài gốc trong link này. Trước khi đi sâu vào chi tiết, chúng ta hãy đồng ý với nhau 3 quan điểm dưới đây: Đội phát triển của Apple và Google (hẳn) là những con người cực kỳ thông minh và ...

Tác giả: Bùi Văn Nam viết 15:44 ngày 07/09/2018

Chạy ứng dụng React Native (Android) trên Window

Mục đích của cái log này là gì? ReactJS và React Native đang là những cái tên khá hot hiện nay, với phương châm "Learn once, write anywhere" , bộ đôi này giúp cho các Developer với kiến thức Javascript tốt có thể dễ dàng dev app cho cả IOS và Android. Tuy nhiên, Facebook team chỉ chính thức hỗ ...

Tác giả: Trịnh Tiến Mạnh viết 15:44 ngày 07/09/2018

Cài đặt Swift trên Ubuntu

Bài viết mình viết lại các bước cài đặt swift trên docker image ubuntu https://swift.org/download/#linux Đầu tiên tạo thư mục tạm để tải file : mkdir /tmp/swift cd /tmp/swift // có thể lấy link mới nhất trên trang chủ của swift wget https://swift.org/builds/ubuntu1404/swift-2.2 ...

Tác giả: Tạ Quốc Bảo viết 15:43 ngày 07/09/2018

Deployment: modularizing web application components

1. Tired about deployment Do again and again for each application Some components just copy & paste 2. DRY the deployment: modularizing components NginX ( Copy & Paste ) Rails App Redis ( Copy & Paste ) MySQL ( Copy & Paste )

Tác giả: Trần Trung Dũng viết 15:43 ngày 07/09/2018

[Android] Login, Share Twitter max easy với Fabric

Có lẽ với những thím lập trình Android hay iOS hiện nay đã quá quen thuộc với Facebook SDK để thực hiện 1 số thao tác như Login, Share, Like, ... Nhưng có lẽ ít ai quan tâm đến Twitter vì có ai dùng mấy đâu mà quan tâm =='. Vậy lý do mình viết bài này là gì? Cty mình đang làm outsource cho Nhật ...

Tác giả: Vũ Văn Thanh viết 15:43 ngày 07/09/2018

Học React/Redux qua ví dụ thực tế: Redux

Hôm nay chúng ta sẽ tiếp tục tìm hiểu về Redux và vai trò của nó trong application. Redux được mô tả như là một predictable state container cho application. Phần lớn các bạn thường thấy Redux được đi một cặp với Redux ở client side application. Thực tế, Redux còn hơn thế, giống như Javascript ...

Tác giả: Vũ Văn Thanh viết 15:42 ngày 07/09/2018

Giảm N+1 Query khi count record dữ liệu quan hệ

Trong Rails đã hỗ trợ một method includes dùng để hổ trợ việc giảm N+1 query trong truy vấn cơ sở dữ liệu quan hệ. Như vậy ở đây mình đặt ra một bài toán như sau. Mình có table categories has_many với table posts và mình muốn lấy list categories và count các bài post tương ứng của category đó thì ...

Tác giả: Vũ Văn Thanh viết 15:42 ngày 07/09/2018

Renacentia là công ty Việt Nam đầu tiên cung cấp game trên iPhone

Renacentia đã trở thành công ty của Việt Nam đầu tiên cung cấp ứng dụng trên iPhone. Trong cuộc họp báo ở đại bản doanh Kawasaki chiều nay, công ty Renacentia đã ra mắt game Whack-a-Halloween!. Giám đốc Nguyễn Minh Đức cho biết đây là game miễn phí (tải ở đây) và cũng là game đầu tiên của Việt ...

Tác giả: Trịnh Tiến Mạnh viết 15:42 ngày 07/09/2018

Precompile Rails asset trên nhiều server

Asset Pipeline là một chức năng khá "hay" của Rails, được xây dựng dựa trên Sprockets, giúp chúng ta nén và hợp nhất các assets (Javascript & CSS, hình ảnh) thành một file duy nhất (application.js, application.css, v.v.), ngoài ra nó còn giúp tạo ra fingerprint cho từng file asset để tối ưu ...

Tác giả: Vũ Văn Thanh viết 15:41 ngày 07/09/2018

[Rails] Cách sử dụng cells để tối ưu code

Link gốc : Việt on Rails Khi làm việc với view của Rails, không ngày nào mà không sử dụng tới method partial. Tuy nhiên, partial chỉ là 1 tính năng để gộp và tái sử dụng code view nhiều lần mà thôi. Khi muốn gộp chung cả logic vào để tạo ra template thì vấn đề sẽ rất phức tạp. Khi gặp vấn đề ...

Tác giả: Bùi Văn Nam viết 15:41 ngày 07/09/2018

Cơ bản với Swift Phần 2

Tiếp theo với Cơ bản với Swift Phần 1 Phần 2 bao gồm: Type Safety và Type Inference Cách viết số (Numeric Literals) Bí danh kiểu dữ liệu (Type Aliases) Kiểu Bool Tuples Swift là một ngôn ngữ hỗ trợ kiểu an toàn (Type Safe, bắt đầu từ đây mình ghi Type Safe luôn vì dịch ra sẽ ...

Tác giả: Trịnh Tiến Mạnh viết 15:41 ngày 07/09/2018

So sánh UX giữa Google Maps và Apple Maps (phần 2)

Bạn nên tìm đọc phần trước trước khi đọc phần này . Flow 1: tìm vị trí trước và tìm đường sau Đây là phần lõi của ứng dụng bản đồ, chiếm khoảng 80% usecase. Tất cả các giao diện ở bài trước đều là để phục vụ cho trải nghiệm trong phần này. Để bắt đầu tìm đường theo cách trên, người dùng cần ...

Tác giả: Vũ Văn Thanh viết 15:40 ngày 07/09/2018

Android từ cơ bản cho đến nâng cao - Supporting Multiple Screens (p1)

Xin chào các bạn, thân là một lập trình viên Android, mình đã gặp khá nhiều trường hợp(kể cả mình) không đào sâu nghiên cứu chi tiết các thành phần trong Android, chỉ biết sử dụng nhưng không hiểu nguyên lý, cách vận hành của nó(giống mình lun :D ). Nên nhân đây mình sẽ làm một loạt bài viết giới ...

Tác giả: Tạ Quốc Bảo viết 15:40 ngày 07/09/2018

Nghiên cứu cách phát triển 1 ứng dụng iOS đơn giản

Ngày nay xu thế mobile đang phát triển như vũ bão và dần thay thế những chiếc máy tính cồng kềnh, kéo theo đó là như cầu với các ứng dụng mobile theo đó cũng tăng lên nhanh chóng, trong số các nền tảng hiện tại không thể không nhắc đến Apple Store với hàng triệu ứng dụng và đang là mảnh đất vàng ...

Tác giả: Trịnh Tiến Mạnh viết 15:40 ngày 07/09/2018

Notifier Mobile giúp bạn theo dõi ứng dụng/hệ thống một các dễ dàng

Notifier Mobile là một service miễn phí cho phép user tạo các notification (thông báo) chỉ với vài dòng code đơn giản. Các notification sẽ được gửi tới thiết bị di động trong thời gian thực (tối đa là 5 phút kể từ khi đoạn code tạo notification được thực thi thành công). Service này là hoàn ...

Tác giả: Bùi Văn Nam viết 15:39 ngày 07/09/2018