I'm using a basic relay and I want to use 12 like this. Each one needs 50 milliamps, but the Arduino can supply only 300 milliamps. What can I do?
You should never drive relays direct from an Arduino. You always need a driver circuit since each OP pin can only reliably provide up to 25mA.
Every relay needs (at least) an NPN transistor and a flyback diode. Follow the myriad of examples for controlling one relay on an Arduino and multiply it by 12.
You might like to make things smaller and more manageable by using a paur of ULN2303 chips with 6 darlington drivers in each instead of using 12 discrete transistors.