
Mastering Rails Validations: Contexts
Bạn đã bao giờ nghĩ tới việc tùy chỉnh validate trong mỗi phân quyền trong Rails chưa? Đó là người sử dụng có quyền cao hơn được cấp quy tắc xác nhận ít nghiêm ngặt hơn. Bắt đầu nào class User < ActiveRecord::Base validates_length_of :slug, minimum: 3 end Nếu chúng ta muốn thêm ...

Tạo livesearch đơn giản trên Rails sử dụng ransack, JavaScript
Phần 1. Giới thiệu Hiện tại hầu như trang web nào cũng có một khung tìm kiếm để tìm các thông tin từ nó. Và chắc hẳn nhiều bạn vừa mới tìm hiểu về web không biết nên bắt đầu từ đâu để làm ra một khung search như thế đúng không? Trong bài này mình sẽ hướng dẫn các bạn tạo một khung search đơn ...

Shared Element Activity Transition
Tổng quan Thông thường, việc chuyển tiếp giữa các Activiy hay Fragment chỉ đơn thuần là ẩn các Activity/Fragment cũ đi và hiển thị cái mới lên, có thể kèm theo một số hiệu ứng như Activity/Fragment mới dần dần hiện ra ( Fade), trượt vào đè lên cái cũ ( Slide).... Hiệu ứng mặc định khi chuyển ...

Tìm hiểu về Environment Varialbles
Như thường lệ, câu hỏi đầu tiên đặt ra: Environment Variables là gì? Hiện nay, có rất nhiều ứng dụng đòi hỏi các thông tin liên quan đến tài khoản email hay là các API key cho các services sử dụng thêm ở ngoài ứng dụng. Các bạn có thể thiết lập cấu hình trên local để ứng dụng mà mình phát triển ...

Lập trình android với bộ nhớ ngoài (External Storage)
Ở bài trước tôi đã giới thiệu đến các bạn lập trình android với bộ nhớ trong. Hôm nay tôi sẽ tiếp tục giới thiệu với các bạn lập trình android với bộ nhớ ngoài. External Storage là nơi lưu trữ dữ liệu ngoài của Android, các file dữ liệu lưu trữ mà bạn lưu trữ tại đây không được hệ thống áp dụng ...

Cơ bản về ruby on rails
Ruby on Rails Là Gì Ruby on Rails là một khung làm việc (web framework) được viết trên ngôn ngữ lập trình Ruby và được sử dụng trong việc xây dựng và phát triển các ứng dụng web. Phiên bản đầu tiên của Ruby on Rails được giới thiệu ra cộng đồng vào năm 2015. Ruby on Rails là phần mềm mã nguồn ...

PHP Traits là gì?
Một trong những vấn đề của PHP như một ngôn ngữ lập trình đó là chỉ có thể đơn kế thừa (single inheritance). Điều đó có nghĩa là một class chỉ có thể kế thừa được một class khác. Tuy vậy, rất nhiều trường hợp việc kế thừa từ nhiều class là việc có ích lợi. Ví dụ, chúng ta mong muốn một class kế ...

Sự khác nhau giữa Block , Proc và Lambda trong Ruby
Đối với những developers chuyên làm việc với Ruby on Rails đa số đã từng sử dụng đến Block, Proc và Lambda hoặc đã từng nghe qua các khái niệm trên. Nhưng bạn có chắc là đã hiểu rõ được các khái niệm trên không? Bạn có biết được 3 khái niệm trên có những điểm giống nhau và khác nhau như thế nào ...

Truy xuất vào Private Fields và Private Method trong Java
Trong Java, chúng ta không thể nào truy cập vào các private field và các phương thức có modifier là private hay protected. Tuy nhiên chúng ta có thể thực hiện qua Java Reflection.Phương pháp này rất hữu ích trong việc kiểm thử bạn cần làm các đối tượng trở nên độc lập để kiểm tra trong phạm vi của ...

Hacking session in rails app [Nguy cơ mất an toàn khi để lộ Secret Key Base]
Ngày đầu khi mới làm việc với rails, mình tự hỏi file secrets.yml được gen ra khi tạo mới rails app, với cặp key: value với key là secret_key_base chứa trong nó, có ý nghĩa gì mà lại được cảnh báo là "Make sure the secrets in this file are kept private if you"re sharing your code publicly.". Sau ...

Impact analysis - Phân tích tác động trong kiểm thử phần mềm
Với sự kết hợp của các tính năng mới vào ứng dụng hoặc sản phẩm, trở thành bắt buộc để kiểm tra ảnh hưởng của các tính năng mới hoặc thay đổi về hiệu suất của hệ thống. Do đó, phân tích tác động được thực hiện. Phân tích tác động là gì Phân tích tác động là việc phân tích các tác động của ...

I18n trong rails (Part I)
Giới thiệu Đối với một trang web có đối tượng người sử dụng ở các vùng miền khác nhau thì việc quốc tế hóa là vô cùng quan trọng. Việc quốc tế hóa có nghĩa là làm cho ứng dụng có khả năng hiển thị nội dung dưới nhiều ngôn ngữ khác nhau. Quốc tế hóa trong tiếng Anh gọi là Internationalization, vì ...

Tìm hiểu về Seed trong Rails
Seed là gì? Mỗi ứng dụng đều cần có dữ liệu, dữ liệu được lưu trong CSDL, và để kết nối phần mềm với CSDL thì seed là tập tin giúp chúng ta điều này. Seed-file chứa tất cả việc tạo các bản ghi cần thiết để giống các cơ sở dữ liệu với giá trị mặc định của nó. Dữ liệu có thể được load bằng ...

Lỗi 404, nguyên nhân và cách phát hiện
1. Lỗi 404 là gì? Khi truy cập vào một trang web mà nhận được lỗi 404 (PAGE NOT FOUND), xuất hiện khi có một request được gửi tới web server không được thực hiện hoặc không tìm thấy request đó. Nói chung, 404 error page (usually a 404 HTTP status code) được trả lại khi truy cập một URL (địa chỉ) ...

Form_for căn bản
Xin chào các bạn. Hôm nay mình xin giới thiệu về FormHelper trong Rails. FormHelper là gì? Form helpers là form được thiết kế để làm việc với resources dễ dàng hơn so với sử dụng HTML Form thường được dùng để create và update tài nguyên và sử dụng: url: Cái mà form sẽ gửi đến và ...

Quản lý dữ liệu test online với TestLodge
Bạn đã từng nghe đến TestLodge ? TestLodge là một công cụ trực tuyến hữu ích trong việc quản lý dữ liệu kiểm thử, nó thay thế cho cách lưu trữ thông thường bằng file text. Bằng cách sử dụng công cụ này, bạn sẽ dễ dàng lưu trữ, thao tác và đánh giá tổng quan về hoạt động kiểm thử của dự án. ...

Leak memory trong Android (Phần 1)
Xin chào mọi người !!!! Bài viết này mình xin chia sẻ về một vấn đề rất thường gặp trong lập trình Android nói riêng và Java nói chung là Leak Memory. Hãy dạo qua sơ lược về khái niệm Leak Memory là gì nhé !! Hãy bất đầu với sự so sánh cơ chế quản lý bộ nhớ giữa ngôn ngữ lập trình C và ...

Full-Text Search trong PostgreSQL - Phần 3
Phần 3: Làm quen với Ranking, Trigger, Index Ở phần trước mình có nói về 2 loại dữ liệu là tsvector và tsquery, cách để FTS 1 term với 1 document. Hôm nay mình sẽ giới thiệu tiếp về Ranking của kết quả tìm kiếm, các viết Trigger để tự động cập nhật tsvector khi document có sự thay đổi, cũng như ...

Quan điểm khác biệt giữa “Tester” và “Developer”
Chúng ta sử dụng rất nhiều ứng dụng mỗi ngày. Internet đã trở thành một phần cuộc sống của mỗi người. Phía sau những ứng dụng đó, dù là ứng dụng về shopping, học tập hay đặt vé chúng đều là sự cống hiến của một đội ngũ hùng hậu tạo ra sản phẩm giúp cuộc sống thoải mái hơn. Những người làm nên các ...

Permission trong Android (Part 2) - Yêu cầu cấp quyền khi ứng dụng đang chạy
Trong phần 2 này mình sẽ giới thiệu cho các bạn về cách yêu cầu được cấp các quyền cần thiết khi ứng dụng đang chạy. Các phần khác: Permission trong Android (Part 1) - Khai báo các quyền (permission) cho ứng dụng Permission trong Android (Part 3): Các chú ý khi yêu cầu cấp quyền Bắt đầu từ ...