I'm confused, it seems that the OP wants to use Bcrypt as an encoding/decoding utility.
About solutions, Django hashes by default the password only with a salt. I'm not sure why it would be valuable to combine user_id+username+password. I've always assumed that using salt+password was the best practice.