Self-dual codes are an important class of linear codes. Hadamard matrices and weighing matrices have been used widely in the construction of binary and ternary self-dual codes. Recently, weighing matrices and orthogonal designs have been used to construct self-dual codes over larger fields. In this paper, we further investigate codes over \( \mathbb{F}_p \), constructed from orthogonal designs. Necessary conditions for these codes to be self-dual are established, and examples are given for lengths up to 40. Self-dual codes of lengths \( 2n \geq 16 \) over \( GF(31) \) and \( GF(37) \) are investigated here for the first time. We also show that codes obtained from orthogonal designs can generally give better results, with respect to their minimum Hamming distance, than codes obtained from Hadamard matrices, weighing matrices, or conference matrices.